Commit Graph

12 Commits

Author SHA1 Message Date
Paul Davis a8fdf7315b keyboard: if a magic widget has focus, handle Primary-(x,c,v) specially
propagate first, so that the magic widget can handle things, then activate.

This fixes cut/copy/paste bindings within a "magic" widget.
2023-06-12 14:42:08 -06:00
Paul Davis 66e714b476 fix crash when using -D accelerators 2023-06-12 14:41:41 -06:00
luz paz fb55878375
Fix source typos (heirarchy->hierarchy) 2022-04-08 21:38:00 +02:00
Mads Kiilerich a86aa31747
gtkmm: use get_visible() instead of deprecated Gtk::Widget::is_visible() 2022-04-08 20:20:10 +02:00
luz paz 364f2f0788 Fix typos in gtk2_ardour/ directory
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sur,te,trough,ue`
2022-01-26 12:35:38 -05:00
Paul Davis d69d918580 slightly extend debug trace output 2021-07-13 12:47:16 -06:00
Robin Gareus d60a6a890d
Fix gtk assert on key-propagation
This can happen when starting Ardour with the Preference pane
as initial tab. The editor, mixer are not realized, so
-propagation fails with:
IA__gtk_widget_event: assertion 'WIDGET_REALIZED_FOR_EVENT (widget, event)' failed
2021-07-07 04:34:28 +02:00
Paul Davis 9905f6e0a9 copy BasicUI::button_varispeed() into ARDOUR_UI, and use in all the right places
We really must find a way to share code between BasicUI and ARDOUR_UI
2021-05-04 16:56:19 -06:00
Paul Davis cf4c300ddd prevent debug-build crash caused by trying to use null-pointer 2020-05-18 14:20:44 -06:00
Paul Davis c03c3332e8 change algorithm for activation/propagation of key events to allow multiple bindings
We now check from the focus widget (if any) for any widget heirarchy bindings, and try to use them.
Next use the "top level" bindings passed in (top level is quoted because they may be owned by a tab,
rather than a window).
Finally, if the event is still not handled, try the global bindings

This model more closely matches what I think a reasonable programmer with experience of other
GUI toolkits would expect, and allows us to have multiple bindings present (though not
simultaneously used) in a given window
2020-04-16 17:48:12 -06:00
Robin Gareus ceee42f7af
Virtual MIDI keyboard, when visible, gets to handle keyboard input first 2019-11-22 22:11:55 +01:00
Paul Davis 5beeca2e95 split apart ardour_ui.cc into a series of distinct source modules.
Should be a 100% no-op - no code was altered, just moved
2019-09-23 14:49:06 -06:00