--- xfce4-indicator-plugin-0.3.1.orig/panel-plugin/indicator.c +++ xfce4-indicator-plugin-0.3.1/panel-plugin/indicator.c @@ -290,17 +290,17 @@ indicator_construct (XfcePanelPlugin *pl static gboolean -entry_scrolled (GtkWidget *menuitem, GdkEventScroll *event, gpointer data) +entry_scrolled (GtkWidget *menuitem, GdkEventScroll *event, IndicatorPlugin *indicator) { IndicatorObject *io = g_object_get_data (G_OBJECT (menuitem), "indicator-custom-object-data"); IndicatorObjectEntry *entry = g_object_get_data (G_OBJECT (menuitem), "indicator-custom-entry-data"); g_return_val_if_fail(INDICATOR_IS_OBJECT(io), FALSE); + g_return_val_if_fail(indicator != NULL, FALSE); - g_signal_emit_by_name (io, "scroll", 1, event->direction); - g_signal_emit_by_name (io, "scroll-entry", entry, 1, event->direction); + g_signal_emit_by_name (io, INDICATOR_OBJECT_SIGNAL_ENTRY_SCROLLED, entry, 1, event->direction); - return FALSE; + return TRUE; } @@ -326,6 +326,8 @@ entry_added (IndicatorObject * io, Indic g_signal_connect(button, "button-press-event", G_CALLBACK(on_button_press), user_data); + g_signal_connect(button, "scroll-event", G_CALLBACK(entry_scrolled), + user_data); gtk_box_pack_start(GTK_BOX(((IndicatorPlugin *)user_data)->buttonbox), button, TRUE, TRUE, 0); gtk_widget_show(button); g_object_set_data(G_OBJECT(button), "indicator-custom-object-data", io);