commit d67de3a9a09ca96c993b987868f28f70ac83fc52
parent 9215a55624edb1563dda2861872acc2ee2a405cb
Author: Enno Boland (tox) <[email protected]>
Date: Wed, 9 Sep 2009 21:58:13 +0200
added scrolling.
Diffstat:
2 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/config.def.h b/config.def.h
@@ -13,11 +13,13 @@ static Key keys[] = {
{ MODKEY, GDK_P, print, { 0 }, ALWAYS },
{ MODKEY, GDK_p, clipboard, { .b = TRUE }, BROWSER },
{ MODKEY, GDK_y, clipboard, { .b = FALSE }, BROWSER },
- { MODKEY, GDK_k, zoom, { .i = +1 }, BROWSER },
- { MODKEY, GDK_j, zoom, { .i = -1 }, BROWSER },
- { MODKEY, GDK_i, zoom, { .i = 0 }, BROWSER },
+ { MODKEY|GDK_SHIFT_MASK,GDK_j, zoom, { .i = -1 }, BROWSER },
+ { MODKEY|GDK_SHIFT_MASK,GDK_k, zoom, { .i = +1 }, BROWSER },
+ { MODKEY|GDK_SHIFT_MASK,GDK_i, zoom, { .i = 0 }, BROWSER },
{ MODKEY, GDK_l, navigate, { .i = +1 }, BROWSER },
{ MODKEY, GDK_h, navigate, { .i = -1 }, BROWSER },
+ { MODKEY, GDK_j, scroll, { .i = +1 }, BROWSER },
+ { MODKEY, GDK_k, scroll, { .i = -1 }, BROWSER },
{ 0, GDK_Escape, stop, { 0 }, BROWSER },
{ MODKEY, GDK_o, source, { 0 }, BROWSER },
{ MODKEY, GDK_n, searchtext, { .b = TRUE }, BROWSER|SEARCHBAR },
diff --git a/surf.c b/surf.c
@@ -103,6 +103,7 @@ static void setcookie(char *name, char *val, char *dom, char *path, long exp);
static void setup();
static void titlechange(WebKitWebView* view, WebKitWebFrame* frame,
const gchar* title, Client *c);
+static void scroll(Client *c, const Arg *arg);
static void searchtext(Client *c, const Arg *arg);
static void source(Client *c, const Arg *arg);
static void showsearch(Client *c, const Arg *arg);
@@ -529,6 +530,22 @@ rereadcookies() {
}
void
+scroll(Client *c, const Arg *arg) {
+ gdouble v;
+ int h, d;
+ GtkAdjustment *a;
+
+ gdk_window_get_geometry(GTK_WIDGET(c->view)->window, &d, &d, &d, &h, &d);
+ a = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(c->scroll));
+ v = gtk_adjustment_get_value(a);
+ v += gtk_adjustment_get_step_increment(a) * arg->i;
+ v = MAX(v, 0.0);
+ v = MIN(v, (double)h);
+ printf("%f %i\n", v, h);
+ gtk_adjustment_set_value (a, v);
+}
+
+void
setcookie(char *name, char *val, char *dom, char *path, long exp) {
}