diff --git a/gtk2_ardour/editor_routes.cc b/gtk2_ardour/editor_routes.cc index 1406ed43a7..cec0969863 100644 --- a/gtk2_ardour/editor_routes.cc +++ b/gtk2_ardour/editor_routes.cc @@ -1535,7 +1535,7 @@ EditorRoutes::selection_changed () } bool -EditorRoutes::selection_filter (Glib::RefPtr const &, TreeModel::Path const&, bool /*selected*/) +EditorRoutes::selection_filter (Glib::RefPtr const& model, TreeModel::Path const& path, bool /*selected*/) { if (selection_countdown) { if (--selection_countdown == 0) { @@ -1545,6 +1545,15 @@ EditorRoutes::selection_filter (Glib::RefPtr const &, TreeModel::Path return false; } } + + TreeModel::iterator iter = model->get_iter (path); + if (iter) { + boost::shared_ptr stripable = (*iter)[_columns.stripable]; + if (boost::dynamic_pointer_cast (stripable)) { + return false; + } + } + return true; }