aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Brendan Taylor <whateley@gmail.com>2010-12-27 09:44:25 -0700
committerGravatar Brendan Taylor <whateley@gmail.com>2010-12-27 14:46:47 -0700
commit6a357cfa2b005cd594ba1183c71531acd4b09556 (patch)
tree26f79493eb907bf40afba0a34e414306dd2fb306 /src
parent5d6dae503e09b3581dafbbd83364943334937166 (diff)
add an ifdef for GTK3 scrollable changes
Diffstat (limited to 'src')
-rw-r--r--src/callbacks.c4
-rw-r--r--src/uzbl-core.c33
-rw-r--r--src/uzbl-core.h3
3 files changed, 27 insertions, 13 deletions
diff --git a/src/callbacks.c b/src/callbacks.c
index ee6cf58..673979e 100644
--- a/src/callbacks.c
+++ b/src/callbacks.c
@@ -324,8 +324,8 @@ cmd_scrollbars_visibility() {
uzbl.gui.bar_v = gtk_range_get_adjustment (GTK_RANGE (uzbl.gui.scbar_v));
uzbl.gui.bar_h = gtk_range_get_adjustment (GTK_RANGE (uzbl.gui.scbar_h));
}
- gtk_scrollable_set_hadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_h);
- gtk_scrollable_set_vadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_v);
+
+ set_webview_scroll_adjustments();
}
/* requires webkit >=1.1.14 */
diff --git a/src/uzbl-core.c b/src/uzbl-core.c
index cc680c2..73ed5c6 100644
--- a/src/uzbl-core.c
+++ b/src/uzbl-core.c
@@ -2277,6 +2277,27 @@ retrieve_geometry() {
uzbl.gui.geometry = g_string_free(buf, FALSE);
}
+void
+set_webview_scroll_adjustments() {
+#ifdef GTK3
+ gtk_scrollable_set_hadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_h);
+ gtk_scrollable_set_vadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_v);
+#else
+ gtk_widget_set_scroll_adjustments (GTK_WIDGET (uzbl.gui.web_view),
+ uzbl.gui.bar_h, uzbl.gui.bar_v);
+#endif
+
+ g_object_connect((GObject*)uzbl.gui.bar_v,
+ "signal::value-changed", (GCallback)scroll_vert_cb, NULL,
+ "signal::changed", (GCallback)scroll_vert_cb, NULL,
+ NULL);
+
+ g_object_connect((GObject*)uzbl.gui.bar_h,
+ "signal::value-changed", (GCallback)scroll_horiz_cb, NULL,
+ "signal::changed", (GCallback)scroll_horiz_cb, NULL,
+ NULL);
+}
+
/* set up gtk, gobject, variable defaults and other things that tests and other
* external applications need to do anyhow */
void
@@ -2418,18 +2439,8 @@ main (int argc, char* argv[]) {
uzbl.gui.bar_v = gtk_range_get_adjustment((GtkRange*) uzbl.gui.scbar_v);
uzbl.gui.scbar_h = (GtkScrollbar*) gtk_hscrollbar_new (NULL);
uzbl.gui.bar_h = gtk_range_get_adjustment((GtkRange*) uzbl.gui.scbar_h);
- gtk_scrollable_set_hadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_h);
- gtk_scrollable_set_vadjustment (GTK_SCROLLABLE(uzbl.gui.web_view), uzbl.gui.bar_v);
- g_object_connect((GObject*)uzbl.gui.bar_v,
- "signal::value-changed", (GCallback)scroll_vert_cb, NULL,
- "signal::changed", (GCallback)scroll_vert_cb, NULL,
- NULL);
-
- g_object_connect((GObject*)uzbl.gui.bar_h,
- "signal::value-changed", (GCallback)scroll_horiz_cb, NULL,
- "signal::changed", (GCallback)scroll_horiz_cb, NULL,
- NULL);
+ set_webview_scroll_adjustments();
gchar *xwin = g_strdup_printf("%d", (int)uzbl.xwin);
g_setenv("UZBL_XID", xwin, TRUE);
diff --git a/src/uzbl-core.h b/src/uzbl-core.h
index 98ae342..097fbfc 100644
--- a/src/uzbl-core.h
+++ b/src/uzbl-core.h
@@ -398,6 +398,9 @@ void
retrieve_geometry();
void
+set_webview_scroll_adjustments();
+
+void
event(WebKitWebView *page, GArray *argv, GString *result);
void