diff options
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/actions.cc | 8 | ||||
-rw-r--r-- | gtk2_ardour/editor.cc | 1 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gtk2_ardour/actions.cc b/gtk2_ardour/actions.cc index 322dd9fccf..5e9c067476 100644 --- a/gtk2_ardour/actions.cc +++ b/gtk2_ardour/actions.cc @@ -364,6 +364,7 @@ void ActionManager::toggle_config_state (const char* group, const char* action, bool (RCConfiguration::*set)(bool), bool (RCConfiguration::*get)(void) const) { Glib::RefPtr<Action> act = ActionManager::get_action (group, action); + if (act) { Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); @@ -381,12 +382,15 @@ void ActionManager::toggle_config_state_foo (const char* group, const char* action, sigc::slot<bool, bool> set, sigc::slot<bool> get) { Glib::RefPtr<Action> act = ActionManager::get_action (group, action); + if (act) { Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); - if (tact->get_active()) { + + if (tact) { bool const x = get (); + if (x != tact->get_active ()) { - set (x); + set (!x); } } } diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 7e9d17b80e..79895f4067 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -4799,6 +4799,7 @@ Editor::post_zoom () playhead_cursor->set_position (playhead_cursor->current_frame); } + refresh_location_display(); _summary->set_overlays_dirty (); instant_save (); |