Introduction
Introduction Statistics Contact Development Disclaimer Help
surf-history-20181009-2b71a22.diff - sites - public wiki contents of suckless.o…
git clone git://git.suckless.org/sites
Log
Files
Refs
---
surf-history-20181009-2b71a22.diff (3405B)
---
1 diff -up surf-2.0/config.def.h surf-2.0-history/config.def.h
2 --- surf-2.0/config.def.h 2017-11-26 14:29:37.963786915 +0100
3 +++ surf-2.0-history/config.def.h 2017-11-26 19:48:31.300096237 +…
4 @@ -6,6 +6,7 @@ static char *styledir = "~/.surf/s
5 static char *certdir = "~/.surf/certificates/";
6 static char *cachedir = "~/.surf/cache/";
7 static char *cookiefile = "~/.surf/cookies.txt";
8 +static char *historyfile = "~/.surf/history.txt";
9
10 /* Webkit default features */
11 /* Highest priority value will be used.
12 @@ -101,6 +102,11 @@ static WebKitFindOptions findopts = WEBK
13 } \
14 }
15
16 +#define SETURI(p) { .v = (char *[]){ "/bin/sh", "-c", \
17 +"prop=\"`surf_history_dmenu.sh`\" &&" \
18 +"xprop -id $1 -f $0 8s -set $0 \"$prop\"", \
19 +p, winid, NULL } }
20 +
21 /* styles */
22 /*
23 * The iteration will stop at the first match, beginning at the beginni…
24 @@ -181,6 +187,7 @@ static Key keys[] = {
25 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_b, toggle, { .i = Scr…
26 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_t, toggle, { .i = Str…
27 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_m, toggle, { .i = Sty…
28 + { MODKEY , GDK_KEY_Return, spawn, SETURI("_SURF_…
29 };
30
31 /* button definitions */
32 Only in surf-2.0-history/: config.h
33 Only in surf-2.0: .git
34 Only in surf-2.0-history/: surf
35 diff -up surf-2.0/surf.c surf-2.0-history/surf.c
36 --- surf-2.0/surf.c 2017-11-26 14:29:37.963786915 +0100
37 +++ surf-2.0-history/surf.c 2017-11-26 14:20:36.757100476 +0100
38 @@ -171,6 +171,7 @@ static void newwindow(Client *c, const A
39 static void spawn(Client *c, const Arg *a);
40 static void destroyclient(Client *c);
41 static void cleanup(void);
42 +static void updatehistory(const char *u, const char *t);
43
44 /* GTK/WebKit */
45 static WebKitWebView *newview(Client *c, WebKitWebView *rv);
46 @@ -336,10 +337,11 @@ setup(void)
47 curconfig = defconfig;
48
49 /* dirs and files */
50 - cookiefile = buildfile(cookiefile);
51 - scriptfile = buildfile(scriptfile);
52 - cachedir = buildpath(cachedir);
53 - certdir = buildpath(certdir);
54 + cookiefile = buildfile(cookiefile);
55 + historyfile = buildfile(historyfile);
56 + scriptfile = buildfile(scriptfile);
57 + cachedir = buildpath(cachedir);
58 + certdir = buildpath(certdir);
59
60 gdkkb = gdk_seat_get_keyboard(gdk_display_get_default_seat(gdpy…
61
62 @@ -1042,12 +1044,28 @@ cleanup(void)
63 while (clients)
64 destroyclient(clients);
65 g_free(cookiefile);
66 + g_free(historyfile);
67 g_free(scriptfile);
68 g_free(stylefile);
69 g_free(cachedir);
70 XCloseDisplay(dpy);
71 }
72
73 +void
74 +updatehistory(const char *u, const char *t)
75 +{
76 + FILE *f;
77 + f = fopen(historyfile, "a+");
78 +
79 + char b[20];
80 + time_t now = time (0);
81 + strftime (b, 20, "%Y-%m-%d %H:%M:%S", localtime (&now));
82 + fputs(b, f);
83 +
84 + fprintf(f, " %s %s\n", u, t);
85 + fclose(f);
86 +}
87 +
88 WebKitWebView *
89 newview(Client *c, WebKitWebView *rv)
90 {
91 @@ -1417,6 +1435,7 @@ loadfailedtls(WebKitWebView *v, gchar *u
92 return TRUE;
93 }
94
95 +
96 void
97 loadchanged(WebKitWebView *v, WebKitLoadEvent e, Client *c)
98 {
99 @@ -1445,6 +1464,7 @@ loadchanged(WebKitWebView *v, WebKitLoad
100 break;
101 case WEBKIT_LOAD_FINISHED:
102 seturiparameters(c, uri, loadfinished);
103 + updatehistory(uri, c->title);
104 /* Disabled until we write some WebKitWebExtension for
105 * manipulating the DOM directly.
106 evalscript(c, "document.documentElement.style.overflow …
107 Only in surf-2.0-history/: surf.o
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.