Index: plugins/launcher/launcher-dialog.c =================================================================== --- plugins/launcher/launcher-dialog.c (revision 19502) +++ plugins/launcher/launcher-dialog.c (working copy) @@ -808,7 +808,8 @@ gtk_widget_set_sensitive (ld->up, TRUE); gtk_widget_set_sensitive (ld->down, TRUE); - gtk_widget_set_sensitive (ld->remove, TRUE); + if (ld->launcher->entries->len > 1) + gtk_widget_set_sensitive (ld->remove, TRUE); for (i = 0; i < ld->launcher->entries->len; ++i) { @@ -819,7 +820,6 @@ if (i == 0) { - gtk_widget_set_sensitive (ld->remove, FALSE); gtk_widget_set_sensitive (ld->up, FALSE); } @@ -1124,7 +1124,7 @@ } else if (b == ld->remove) { - if (!e || e == g_ptr_array_index (ld->launcher->entries, 0)) + if (!e) return; if (gtk_list_store_remove (GTK_LIST_STORE (model), &iter)) @@ -1147,7 +1147,10 @@ launcher_entry_free (e); if (ld->launcher->entries->len == 1) + { gtk_widget_hide (ld->launcher->arrowbutton); + gtk_widget_set_sensitive (ld->remove, FALSE); + } } cursor_changed (GTK_TREE_VIEW (ld->tree), ld);