if user uses Ctrl/Cmd-w to close a dialog during startup, treat that as a request to exit
This commit is contained in:
parent
6f4e838a58
commit
d7b6d6e2c4
|
@ -41,6 +41,7 @@
|
|||
|
||||
#include "gtkmm2ext/application.h"
|
||||
#include <gtkmm2ext/doi.h>
|
||||
#include <gtkmm2ext/keyboard.h>
|
||||
|
||||
#include "ardour_ui.h"
|
||||
#include "debug.h"
|
||||
|
@ -94,6 +95,8 @@ StartupFSM::StartupFSM (EngineControl& amd)
|
|||
|
||||
app->ShouldQuit.connect (sigc::mem_fun (*this, &StartupFSM::queue_finish));
|
||||
app->ShouldLoad.connect (sigc::mem_fun (*this, &StartupFSM::load_from_application_api));
|
||||
|
||||
Gtkmm2ext::Keyboard::HideMightMeanQuit.connect (sigc::mem_fun (*this, &StartupFSM::dialog_hidden));
|
||||
}
|
||||
|
||||
StartupFSM::~StartupFSM ()
|
||||
|
@ -104,6 +107,16 @@ StartupFSM::~StartupFSM ()
|
|||
delete new_user_dialog;
|
||||
}
|
||||
|
||||
void
|
||||
StartupFSM::dialog_hidden (Gtk::Window* /* ignored */)
|
||||
{
|
||||
/* since this object only exists during startup, any attempt to close
|
||||
* any dialog that we manage with Ctrl/Cmd-w is assumed to indicate a
|
||||
* desire to quit on the part of the user.
|
||||
*/
|
||||
queue_finish ();
|
||||
}
|
||||
|
||||
void
|
||||
StartupFSM::queue_finish ()
|
||||
{
|
||||
|
|
|
@ -117,6 +117,8 @@ class StartupFSM : public sigc::trackable
|
|||
sigc::connection current_dialog_connection;
|
||||
|
||||
sigc::signal1<void,Result> _signal_response;
|
||||
|
||||
void dialog_hidden (Gtk::Window*);
|
||||
};
|
||||
|
||||
#endif /* __gtk2_ardour_startup_fsm_h__ */
|
||||
|
|
Loading…
Reference in New Issue