From 97e8253eb3ce9e16e0214a791526e623d442d20b Mon Sep 17 00:00:00 2001 From: Andrej Kacian Date: Tue, 1 Sep 2015 03:00:39 +0200 Subject: [PATCH 1/1] Make Home and End keys work in folderview pane. --- src/folderview.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/folderview.c b/src/folderview.c index 16a58bf63..73555ea81 100644 --- a/src/folderview.c +++ b/src/folderview.c @@ -1995,6 +1995,8 @@ static gboolean folderview_button_released(GtkWidget *ctree, GdkEventButton *eve static gboolean folderview_key_pressed(GtkWidget *widget, GdkEventKey *event, FolderView *folderview) { + GtkCMCTreeNode *node; + if (!event) return FALSE; if (quicksearch_has_focus(folderview->summaryview->quicksearch)) @@ -2032,6 +2034,20 @@ static gboolean folderview_key_pressed(GtkWidget *widget, GdkEventKey *event, folderview->selected); } break; + case GDK_KEY_Home: + case GDK_KEY_End: + if (event->keyval == GDK_KEY_Home) + node = gtk_cmctree_node_nth(GTK_CMCTREE(folderview->ctree), 0); + else + node = gtk_cmctree_last(GTK_CMCTREE(folderview->ctree), + gtk_cmctree_node_nth(GTK_CMCTREE(folderview->ctree), 0)); + + gtk_cmctree_select(GTK_CMCTREE(folderview->ctree), node); + + if (!gtk_cmctree_node_is_visible(GTK_CMCTREE(folderview->ctree), node)) + gtk_cmctree_node_moveto(GTK_CMCTREE(folderview->ctree), + node, -1, 0, 0); + break; default: break; } -- 2.25.1