Index: libxfcegui4/netk-tasklist.c =================================================================== --- libxfcegui4/netk-tasklist.c (revision 23461) +++ libxfcegui4/netk-tasklist.c (working copy) @@ -2227,6 +2227,36 @@ return FALSE; } +static gboolean +netk_task_button_scroll_event (GtkWidget * widget, + GdkEventScroll * event, gpointer data) +{ + NetkTask *task = NETK_TASK (data); + + /* currently the scroll wheel only works on windows, not groups */ + /* a good option might be scrolling through the list of window in the group */ + if (task->type == NETK_TASK_WINDOW) + { + switch (event->direction) + { + case GDK_SCROLL_UP: + netk_window_unminimize (task->window); + break; + + case GDK_SCROLL_DOWN: + netk_window_minimize (task->window); + break; + + case GDK_SCROLL_LEFT: + case GDK_SCROLL_RIGHT: + /* not used, if you've got a good idea: bugzilla.xfce.org */ + break; + } + } + + return TRUE; +} + static void netk_task_create_widgets (NetkTask * task) { @@ -2297,6 +2327,10 @@ g_signal_connect_object (G_OBJECT (task->button), "button_press_event", G_CALLBACK (netk_task_button_press_event), G_OBJECT (task), 0); + + g_signal_connect_object (G_OBJECT (task->button), "scroll_event", + G_CALLBACK (netk_task_button_scroll_event), + G_OBJECT (task), 0); g_signal_connect_object (G_OBJECT (task->button), "drag_motion", G_CALLBACK (netk_task_drag_motion),