summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r--gtk2_ardour/ardour_ui.cc15
1 files changed, 9 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 18cba7af9b..3ee2c95689 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -718,6 +718,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));
@@ -778,17 +779,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;
}
}
@@ -804,7 +805,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;
}
}