summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/group_tabs.cc5
-rw-r--r--gtk2_ardour/mixer_group_tabs.cc4
-rw-r--r--gtk2_ardour/mixer_strip.cc4
-rw-r--r--gtk2_ardour/mixer_strip.h2
-rw-r--r--gtk2_ardour/mixer_ui.cc13
-rw-r--r--gtk2_ardour/mixer_ui.h4
6 files changed, 17 insertions, 15 deletions
diff --git a/gtk2_ardour/group_tabs.cc b/gtk2_ardour/group_tabs.cc
index 938a151b78..03554f72eb 100644
--- a/gtk2_ardour/group_tabs.cc
+++ b/gtk2_ardour/group_tabs.cc
@@ -86,7 +86,10 @@ GroupTabs::on_button_press_event (GdkEventButton* ev)
} else if (ev->button == 3) {
RouteGroup* g = t ? t->group : 0;
- get_menu(g)->popup (ev->button, ev->time);
+ Menu* m = get_menu (g);
+ if (m) {
+ m->popup (ev->button, ev->time);
+ }
}
diff --git a/gtk2_ardour/mixer_group_tabs.cc b/gtk2_ardour/mixer_group_tabs.cc
index 621f57c838..a261fc8ec9 100644
--- a/gtk2_ardour/mixer_group_tabs.cc
+++ b/gtk2_ardour/mixer_group_tabs.cc
@@ -162,6 +162,10 @@ MixerGroupTabs::reflect_tabs (list<Tab> const & tabs)
Gtk::Menu*
MixerGroupTabs::get_menu (RouteGroup* g)
{
+ if (g == 0) {
+ return 0;
+ }
+
using namespace Menu_Helpers;
delete _menu;
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc
index 073feaf339..646d55ff6b 100644
--- a/gtk2_ardour/mixer_strip.cc
+++ b/gtk2_ardour/mixer_strip.cc
@@ -605,9 +605,7 @@ MixerStrip::set_width_enum (Width w, void* owner)
update_output_display ();
route_group_changed (0);
name_changed ();
-#ifdef GTKOSX
- WidthChanged();
-#endif
+ WidthChanged ();
}
void
diff --git a/gtk2_ardour/mixer_strip.h b/gtk2_ardour/mixer_strip.h
index 6b7ffb44ce..46cc572200 100644
--- a/gtk2_ardour/mixer_strip.h
+++ b/gtk2_ardour/mixer_strip.h
@@ -98,9 +98,7 @@ class MixerStrip : public RouteUI, public Gtk::EventBox
void set_route (boost::shared_ptr<ARDOUR::Route>);
void set_button_names ();
-#ifdef GTKOSX
sigc::signal<void> WidthChanged;
-#endif
static sigc::signal<void,boost::shared_ptr<ARDOUR::Route> > SwitchIO;
diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc
index 1c31f400ff..eb79d8042c 100644
--- a/gtk2_ardour/mixer_ui.cc
+++ b/gtk2_ardour/mixer_ui.cc
@@ -338,9 +338,7 @@ Mixer_UI::add_strip (RouteList& routes)
route->NameChanged.connect (bind (mem_fun(*this, &Mixer_UI::strip_name_changed), strip));
strip->GoingAway.connect (bind (mem_fun(*this, &Mixer_UI::remove_strip), strip));
-#ifdef GTKOSX
- strip->WidthChanged.connect (mem_fun(*this, &Mixer_UI::queue_draw_all_strips));
-#endif
+ strip->WidthChanged.connect (mem_fun(*this, &Mixer_UI::strip_width_changed));
strip->signal_button_release_event().connect (bind (mem_fun(*this, &Mixer_UI::strip_button_release_event), strip));
}
@@ -774,10 +772,12 @@ Mixer_UI::redisplay_track_list ()
_group_tabs->set_dirty ();
}
-#ifdef GTKOSX
void
-Mixer_UI::queue_draw_all_strips ()
+Mixer_UI::strip_width_changed ()
{
+ _group_tabs->set_dirty ();
+
+#ifdef GTKOSX
TreeModel::Children rows = track_model->children();
TreeModel::Children::iterator i;
long order;
@@ -795,8 +795,9 @@ Mixer_UI::queue_draw_all_strips ()
strip->queue_draw();
}
}
-}
#endif
+
+}
void
Mixer_UI::set_auto_rebinding( bool val )
diff --git a/gtk2_ardour/mixer_ui.h b/gtk2_ardour/mixer_ui.h
index 673a619594..1ebe0e031b 100644
--- a/gtk2_ardour/mixer_ui.h
+++ b/gtk2_ardour/mixer_ui.h
@@ -154,9 +154,7 @@ class Mixer_UI : public Gtk::Window
void redisplay_track_list ();
bool no_track_list_redisplay;
bool track_display_button_press (GdkEventButton*);
-#ifdef GTKOSX
- void queue_draw_all_strips ();
-#endif
+ void strip_width_changed ();
void track_list_change (const Gtk::TreeModel::Path&,const Gtk::TreeModel::iterator&);
void track_list_delete (const Gtk::TreeModel::Path&);