diff options
Diffstat (limited to 'desktop/gmrun/patches/gmrun-0.9.2-mousewheel.patch')
-rw-r--r-- | desktop/gmrun/patches/gmrun-0.9.2-mousewheel.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/desktop/gmrun/patches/gmrun-0.9.2-mousewheel.patch b/desktop/gmrun/patches/gmrun-0.9.2-mousewheel.patch new file mode 100644 index 0000000000..ac1f843223 --- /dev/null +++ b/desktop/gmrun/patches/gmrun-0.9.2-mousewheel.patch @@ -0,0 +1,68 @@ +diff -ur gmrun-0.9.2/src/gtkcompletionline.cc gmrun-0.9.2.new/src/gtkcompletionline.cc +--- gmrun-0.9.2/src/gtkcompletionline.cc 2010-01-11 12:20:16.076644635 +0200 ++++ gmrun-0.9.2.new/src/gtkcompletionline.cc 2010-01-11 12:21:11.815581518 +0200 +@@ -75,6 +75,8 @@ + + static gboolean + on_key_press(GtkCompletionLine *cl, GdkEventKey *event, gpointer data); ++static gboolean ++on_scroll(GtkCompletionLine *cl, GdkEventScroll *event, gpointer data); + + /* get_type */ + guint gtk_completion_line_get_type(void) +@@ -204,6 +206,8 @@ + GTK_SIGNAL_FUNC(on_key_press), NULL); + gtk_signal_connect(GTK_OBJECT(object), "key_release_event", + GTK_SIGNAL_FUNC(on_key_press), NULL); ++ gtk_signal_connect(GTK_OBJECT(object), "scroll-event", ++ GTK_SIGNAL_FUNC(on_scroll), NULL); + + object->hist = new HistoryFile(); + +@@ -954,6 +958,45 @@ + } + + static gboolean ++on_scroll(GtkCompletionLine *cl, GdkEventScroll *event, gpointer data) ++{ ++ if (event->direction == GDK_SCROLL_UP) { ++ if (cl->win_compl != NULL) { ++ int &item = cl->list_compl_items_where; ++ item--; ++ if (item < 0) { ++ item = 0; ++ } else { ++ complete_from_list(cl); ++ } ++ } else { ++ up_history(cl); ++ } ++ if (MODE_SRC) { ++ search_off(cl); ++ } ++ return TRUE; ++ } else if (event->direction == GDK_SCROLL_DOWN) { ++ if (cl->win_compl != NULL) { ++ int &item = cl->list_compl_items_where; ++ item++; ++ if (item >= cl->list_compl_nr_rows) { ++ item = cl->list_compl_nr_rows - 1; ++ } else { ++ complete_from_list(cl); ++ } ++ } else { ++ down_history(cl); ++ } ++ if (MODE_SRC) { ++ search_off(cl); ++ } ++ return TRUE; ++ } ++ return FALSE; ++} ++ ++static gboolean + on_key_press(GtkCompletionLine *cl, GdkEventKey *event, gpointer data) + { + static gint tt_id = -1; +Only in gmrun-0.9.2.new/src: gtkcompletionline.cc.orig |