summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2012-06-02 17:07:04 +0200
committerGravatar waker <wakeroid@gmail.com>2012-06-02 17:07:04 +0200
commit2b64e669a1ab699ecfd002d85f1906217ad3bdf0 (patch)
treebfa7faeabfbe36eb8eb54bff279f39937621bfb6
parent25580b146d1002a7c151834accb2ceda10644db5 (diff)
fixed scroll-event in gtkui3
-rw-r--r--plugins/gtkui/ddblistview.c6
-rw-r--r--plugins/gtkui/ddbtabstrip.c3
-rw-r--r--plugins/gtkui/ddbvolumebar.c1
-rw-r--r--plugins/gtkui/gtkui.c4
4 files changed, 13 insertions, 1 deletions
diff --git a/plugins/gtkui/ddblistview.c b/plugins/gtkui/ddblistview.c
index 578ab3cb..841c9cf3 100644
--- a/plugins/gtkui/ddblistview.c
+++ b/plugins/gtkui/ddblistview.c
@@ -360,7 +360,11 @@ ddb_listview_init(DdbListview *listview)
listview->list = gtk_drawing_area_new ();
gtk_widget_show (listview->list);
gtk_box_pack_start (GTK_BOX (vbox), listview->list, TRUE, TRUE, 0);
- gtk_widget_set_events (listview->list, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
+ int events = GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK;
+#if GTK_CHECK_VERSION(3,0,0)
+ events |= GDK_SCROLL_MASK;
+#endif
+ gtk_widget_set_events (listview->list, events);
listview->hscrollbar = gtk_hscrollbar_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 0, 0, 0, 0)));
gtk_widget_show (listview->hscrollbar);
diff --git a/plugins/gtkui/ddbtabstrip.c b/plugins/gtkui/ddbtabstrip.c
index 26a05c39..b21a0378 100644
--- a/plugins/gtkui/ddbtabstrip.c
+++ b/plugins/gtkui/ddbtabstrip.c
@@ -328,6 +328,9 @@ ddb_tabstrip_init(DdbTabStrip *tabstrip)
tabstrip->prev_x = 0;
tabstrip->movepos = 0;
drawctx_init (&tabstrip->drawctx);
+#if GTK_CHECK_VERSION(3,0,0)
+ gtk_widget_set_events (GTK_WIDGET (tabstrip), gtk_widget_get_events (GTK_WIDGET (mainwin)) | GDK_SCROLL_MASK);
+#endif
}
static int tab_clicked = -1;
diff --git a/plugins/gtkui/ddbvolumebar.c b/plugins/gtkui/ddbvolumebar.c
index 7c74cbec..ae7f5420 100644
--- a/plugins/gtkui/ddbvolumebar.c
+++ b/plugins/gtkui/ddbvolumebar.c
@@ -123,6 +123,7 @@ ddb_volumebar_init(DdbVolumeBar *volumebar)
snprintf (s, sizeof (s), "%s%ddB", db < 0 ? "" : "+", db);
gtk_widget_set_tooltip_text (GTK_WIDGET (volumebar), s);
gtk_widget_set_has_window (GTK_WIDGET (volumebar), FALSE);
+ gtk_widget_set_events (GTK_WIDGET (volumebar), GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
}
void
diff --git a/plugins/gtkui/gtkui.c b/plugins/gtkui/gtkui.c
index e4b5dada..7482ed49 100644
--- a/plugins/gtkui/gtkui.c
+++ b/plugins/gtkui/gtkui.c
@@ -1104,6 +1104,10 @@ gtkui_thread (void *ctx) {
gtk_init (&argc, (char ***)&argv);
mainwin = create_mainwin ();
+#if GTK_CHECK_VERSION(3,0,0)
+ gtk_widget_set_events (GTK_WIDGET (mainwin), gtk_widget_get_events (GTK_WIDGET (mainwin)) | GDK_SCROLL_MASK);
+#endif
+
gtkpl_init ();
GtkIconTheme *theme = gtk_icon_theme_get_default();