diff options
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index b4ea8338dd..e24370ff99 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -722,6 +722,7 @@ ARDOUR_UI::starting () { Application* app = Application::instance (); char *nsm_url; + bool brand_new_user = ArdourStartup::required (); app->ShouldQuit.connect (sigc::mem_fun (*this, &ARDOUR_UI::queue_finish)); app->ShouldLoad.connect (sigc::mem_fun (*this, &ARDOUR_UI::idle_load)); @@ -782,17 +783,17 @@ ARDOUR_UI::starting () } } else { - - if (ArdourStartup::required()) { + + if (brand_new_user) { ArdourStartup s; s.present (); main().run(); s.hide (); switch (s.response ()) { - case Gtk::RESPONSE_REJECT: - return -1; - default: + case Gtk::RESPONSE_OK: break; + default: + return -1; } } @@ -808,7 +809,9 @@ ARDOUR_UI::starting () /* go get a session */ - if (get_session_parameters (false, ARDOUR_COMMAND_LINE::new_session, ARDOUR_COMMAND_LINE::load_template)) { + const bool new_session_required = (ARDOUR_COMMAND_LINE::new_session || brand_new_user); + + if (get_session_parameters (false, new_session_required, ARDOUR_COMMAND_LINE::load_template)) { return -1; } } |