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) {