tweak window-proxy session-management logic
authorRobin Gareus <robin@gareus.org>
Wed, 10 Jul 2013 13:21:24 +0000 (15:21 +0200)
committerRobin Gareus <robin@gareus.org>
Wed, 10 Jul 2013 13:27:17 +0000 (15:27 +0200)
gtk2_ardour/ardour_ui_dialogs.cc

index fd1139b9fcb2e08308e7d79f5256dbfbe4406e74..5422bb9957e4a8e0d62e213c63da2491883869ec 100644 (file)
@@ -65,9 +65,9 @@ ARDOUR_UI::set_session (Session *s)
 {
        SessionHandlePtr::set_session (s);
 
-       WM::Manager::instance().set_session (s);
 
        if (!_session) {
+               WM::Manager::instance().set_session (s);
                /* Session option editor cannot exist across change-of-session */
                session_option_editor.drop_window ();
                /* Ditto for AddVideoDialog */
@@ -87,6 +87,8 @@ ARDOUR_UI::set_session (Session *s)
                }
        }
 
+       WM::Manager::instance().set_session (s);
+
        AutomationWatch::instance().set_session (s);
 
        if (shuttle_box) {
@@ -228,6 +230,7 @@ ARDOUR_UI::unload_session (bool hide_stuff)
 
        rec_button.set_sensitive (false);
 
+       WM::Manager::instance().set_session ((ARDOUR::Session*) 0);
        ARDOUR_UI::instance()->video_timeline->close_session();
 
        stop_blinking ();