Allow "remove from recent" only for top-level
authorRobin Gareus <robin@gareus.org>
Fri, 28 Apr 2017 12:32:37 +0000 (14:32 +0200)
committerRobin Gareus <robin@gareus.org>
Fri, 28 Apr 2017 12:32:37 +0000 (14:32 +0200)
gtk2_ardour/session_dialog.cc

index 3205e11d53893d1fc2876e2594a3e49d3be07a82..61e34a6ebf0af9a3d16b8978d0f5b9ccff669ce9 100644 (file)
@@ -1244,11 +1244,16 @@ SessionDialog::recent_context_mennu (GdkEventButton *ev)
                return;
        }
 
+       Gtk::TreeModel::Path tpath = recent_session_model->get_path(iter);
+       const bool is_child = tpath.up () && tpath.up ();
+
        Gtk::Menu* m = manage (new Menu);
        MenuList& items = m->items ();
        items.push_back (MenuElem (s));
-       items.push_back (SeparatorElem());
-       items.push_back (MenuElem (_("Remove from recent"), sigc::mem_fun (*this, &SessionDialog::recent_remove_selected)));
+       if (!is_child) {
+               items.push_back (SeparatorElem());
+               items.push_back (MenuElem (_("Remove session from recent list"), sigc::mem_fun (*this, &SessionDialog::recent_remove_selected)));
+       }
        m->popup (ev->button, ev->time);
 }