summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@netsurf-browser.org>2007-06-15 08:14:55 +0000
committerDaniel Silverstone <dsilvers@netsurf-browser.org>2007-06-15 08:14:55 +0000
commit79d6aca7e0fc1635be0bbac5ec64a65df20027bd (patch)
treea8479201b06888497edc420528476e3b669c7c2f /gtk
parent92fd7ff871f810b509a1f43863dd9d084db10c16 (diff)
downloadnetsurf-79d6aca7e0fc1635be0bbac5ec64a65df20027bd.tar.gz
netsurf-79d6aca7e0fc1635be0bbac5ec64a65df20027bd.tar.bz2
Make sure the GTK frontend can get and set scroll position
svn path=/trunk/netsurf/; revision=3345
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtk_window.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/gtk/gtk_window.c b/gtk/gtk_window.c
index 638df28dc..b1ed0f731 100644
--- a/gtk/gtk_window.c
+++ b/gtk/gtk_window.c
@@ -594,14 +594,28 @@ void gui_window_update_box(struct gui_window *g,
bool gui_window_get_scroll(struct gui_window *g, int *sx, int *sy)
{
- *sx = 0;
- *sy = 0;
- return true;
+ GtkAdjustment *vadj = gtk_viewport_get_vadjustment(g->viewport);
+ GtkAdjustment *hadj = gtk_viewport_get_hadjustment(g->viewport);
+
+ assert(vadj);
+ assert(hadj);
+
+ *sy = (int)(gtk_adjustment_get_value(vadj));
+ *sx = (int)(gtk_adjustment_get_value(hadj));
+
+ return true;
}
void gui_window_set_scroll(struct gui_window *g, int sx, int sy)
{
-
+ GtkAdjustment *vadj = gtk_viewport_get_vadjustment(g->viewport);
+ GtkAdjustment *hadj = gtk_viewport_get_hadjustment(g->viewport);
+
+ assert(vadj);
+ assert(hadj);
+
+ gtk_adjustment_set_value(vadj, (double)sy);
+ gtk_adjustment_set_value(hadj, (double)sx);
}
float gui_window_get_scale(struct gui_window *g)