[Goodies-commits] r3947 - ristretto/trunk/src

Stephan Arts stephan at xfce.org
Mon Feb 11 18:14:24 CET 2008


Author: stephan
Date: 2008-02-11 17:14:24 +0000 (Mon, 11 Feb 2008)
New Revision: 3947

Modified:
   ristretto/trunk/src/thumbnail_bar.c
Log:
Fix scroll-wheel behaviour



Modified: ristretto/trunk/src/thumbnail_bar.c
===================================================================
--- ristretto/trunk/src/thumbnail_bar.c	2008-02-11 14:37:26 UTC (rev 3946)
+++ ristretto/trunk/src/thumbnail_bar.c	2008-02-11 17:14:24 UTC (rev 3947)
@@ -73,6 +73,10 @@
 cb_rstto_thumbnail_bar_thumbnail_scroll_event (RsttoThumbnail *thumb,
                                                GdkEventScroll *event,
                                                gpointer *user_data);
+static gboolean
+cb_rstto_thumbnail_bar_scroll_event (RsttoThumbnailBar *bar,
+                                     GdkEventScroll *event,
+                                     gpointer *user_data);
 
 static void
 rstto_thumbnail_bar_add(GtkContainer *container, GtkWidget *child);
@@ -145,10 +149,14 @@
 
 	GTK_WIDGET_UNSET_FLAGS(bar, GTK_NO_WINDOW);
 	gtk_widget_set_redraw_on_allocate(GTK_WIDGET(bar), TRUE);
+    gtk_widget_set_events (GTK_WIDGET(bar),
+                           GDK_SCROLL_MASK);
 
     bar->priv->orientation = GTK_ORIENTATION_HORIZONTAL;
     bar->priv->offset = 0;
 
+    g_signal_connect(G_OBJECT(bar), "scroll_event", G_CALLBACK(cb_rstto_thumbnail_bar_scroll_event), NULL);
+
 }
 
 static void
@@ -785,6 +793,26 @@
 
 }
 
+static gboolean
+cb_rstto_thumbnail_bar_scroll_event (RsttoThumbnailBar *bar,
+                                     GdkEventScroll *event,
+                                     gpointer *user_data)
+{
+    switch(event->direction)
+    {
+        case GDK_SCROLL_UP:
+        case GDK_SCROLL_LEFT:
+            rstto_navigator_jump_back(bar->priv->navigator);
+            break;
+        case GDK_SCROLL_DOWN:
+        case GDK_SCROLL_RIGHT:
+            rstto_navigator_jump_forward(bar->priv->navigator);
+            break;
+    }
+    return FALSE;
+
+}
+
 static void
 cb_rstto_thumbnail_bar_nav_entry_removed(RsttoNavigator *nav, RsttoNavigatorEntry *entry, RsttoThumbnailBar *bar)
 {




More information about the Goodies-commits mailing list