diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-08-08 08:36:29 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-02-22 15:31:24 -0500 |
commit | 67e19c177f473807cd6510751bcf4a48574e6088 (patch) | |
tree | f44cf815264162afd9d0d4f06c938c4be6cfb06a /gtk2_ardour/ardour_ui_dependents.cc | |
parent | 29b69b0ab4e92b49e171bfeb68af58da43ae766b (diff) |
radically change Keyboard/Binding API design to disconnect Gtk::Action lookup from binding definition
We need this because we need binding information/objects before all
Actions have been defined.
Diffstat (limited to 'gtk2_ardour/ardour_ui_dependents.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_dependents.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gtk2_ardour/ardour_ui_dependents.cc b/gtk2_ardour/ardour_ui_dependents.cc index c413236e11..c4762c6b96 100644 --- a/gtk2_ardour/ardour_ui_dependents.cc +++ b/gtk2_ardour/ardour_ui_dependents.cc @@ -73,7 +73,6 @@ ARDOUR_UI::we_have_dependents () /* all actions are defined */ - ActionManager::enable_accelerators (); ActionManager::load_menus (ARDOUR_COMMAND_LINE::menus_file); editor->track_mixer_selection (); @@ -205,6 +204,13 @@ tab_window_root_drop (GtkNotebook* src, int ARDOUR_UI::setup_windows () { + /* actions do not need to be defined when we load keybindings. They + * will be lazily discovered. But bindings do need to exist when we + * create windows/tabs with their own binding sets. + */ + + keyboard->setup_keybindings (); + /* we don't use a widget with its own window for the tab close button, which makes it impossible to rely on GTK+ to generate signals for events occuring "in" this widget. Instead, we pre-connect a @@ -218,8 +224,6 @@ ARDOUR_UI::setup_windows () rc_option_editor = new RCOptionEditor; rc_option_editor->StateChange.connect (sigc::mem_fun (*this, &ARDOUR_UI::tabbable_state_change)); - keyboard->setup_keybindings (); - if (create_editor ()) { error << _("UI: cannot setup editor") << endmsg; return -1; |