From 1374a025e153d81fd951d1e4a0a043c0cc4fe448 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Tue, 29 Aug 2017 11:14:33 -0400 Subject: [PATCH] gui/sidebar: Split out __gui_sidebar_delete() into a new function This gives me a function that I can reuse in the sidebar right-click menu, and it cleans up the main keypress handler so more keys can be added. Signed-off-by: Anna Schumaker --- gui/sidebar.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/gui/sidebar.c b/gui/sidebar.c index efc2dc66..73572a2d 100644 --- a/gui/sidebar.c +++ b/gui/sidebar.c @@ -132,21 +132,28 @@ void __gui_sidebar_selection_changed(GtkTreeSelection *selection, gpointer data) gtk_widget_set_sensitive(GTK_WIDGET(gui_random_button()), sensitive); } -bool __gui_sidebar_keypress(GtkTreeView *treeview, GdkEventKey *event, - gpointer data) +bool __gui_sidebar_delete(GtkMenuItem *item, gpointer data) { GtkTreeIter iter; - if (event->keyval != GDK_KEY_Delete) - return false; if (!gui_sidebar_iter_current(&iter)) return false; - if (playlist_delete(gui_model_get_playlist())) gtk_tree_store_remove(gui_sidebar_store(), &iter); return true; } +bool __gui_sidebar_keypress(GtkTreeView *treeview, GdkEventKey *event, + gpointer data) +{ + switch (event->keyval) { + case GDK_KEY_Delete: + return __gui_sidebar_delete(NULL, NULL); + default: + return false; + } +} + bool __gui_sidebar_button_press(GtkTreeView *treeview, GdkEventButton *event, gpointer data) {