diff --git a/gui/playlist.c b/gui/playlist.c
index 3f354088..b9b75f8d 100644
--- a/gui/playlist.c
+++ b/gui/playlist.c
@@ -43,38 +43,6 @@ static void __playlist_set_size(GtkTreeIter *iter, const gchar *name)
g_free(text);
}
-bool __playlist_keypress(GtkTreeView *treeview, GdkEventKey *event,
- gpointer data)
-{
- GtkTreeSelection *selection = gtk_tree_view_get_selection(treeview);
- GtkTreeModel *model = gui_sidebar_model();
- GtkTreeIter iter, child;
- gchar *name = NULL;
- GtkTreePath *path;
- GList *rows;
-
- if (event->keyval != GDK_KEY_Delete)
- return false;
-
- rows = gtk_tree_selection_get_selected_rows(selection, &model);
- path = rows->data;
-
- if (!gtk_tree_model_get_iter(model, &iter, path))
- return false;
-
- __playlist_filter_get_iter(&iter, &child);
- name = gui_sidebar_iter_name(&child);
- if (!name)
- goto out;
-
- if (playlist_delete(gui_sidebar_iter_type(&child), name))
- gtk_tree_store_remove(gui_sidebar_store(), &child);
- g_free(name);
-out:
- g_list_free_full(rows, (GDestroyNotify)gtk_tree_path_free);
- return true;
-}
-
void __playlist_row_activated(GtkTreeView *treeview, GtkTreePath *path,
GtkTreeViewColumn *col, gpointer data)
{
diff --git a/gui/sidebar.c b/gui/sidebar.c
index 934efea4..9a638500 100644
--- a/gui/sidebar.c
+++ b/gui/sidebar.c
@@ -141,6 +141,25 @@ void __gui_sidebar_selection_changed(GtkTreeSelection *selection, gpointer data)
gui_treeview_set_playlist(playlist);
}
+bool __gui_sidebar_keypress(GtkTreeView *treeview, GdkEventKey *event,
+ gpointer data)
+{
+ GtkTreeSelection *selection = gtk_tree_view_get_selection(treeview);
+ struct playlist *playlist = gui_model_get_playlist();
+ GtkTreeModel *model = GTK_TREE_MODEL(gui_sidebar_filter());
+ GtkTreeIter iter, child;
+
+ if (!playlist || event->keyval != GDK_KEY_Delete)
+ return false;
+ if (!gtk_tree_selection_get_selected(selection, &model, &iter))
+ return false;
+
+ __gui_sidebar_filter_iter_convert(&iter, &child);
+ if (playlist_delete(playlist->pl_type, playlist->pl_name))
+ gtk_tree_store_remove(gui_sidebar_store(), &child);
+ return true;
+}
+
void __gui_sidebar_resized(GtkPaned *pane, GParamSpec *pspec, gpointer data)
{
settings_set(SIDEBAR_SETTING, gtk_paned_get_position(pane));
diff --git a/share/ocarina/ocarina.ui b/share/ocarina/ocarina.ui
index 1cae4a0b..fd805735 100644
--- a/share/ocarina/ocarina.ui
+++ b/share/ocarina/ocarina.ui
@@ -747,7 +747,7 @@ audio-volume-medium
False
1
True
-
+