Commit graph

12005 commits

Author SHA1 Message Date
Paul Davis
589f2a1ab8 change suffix of keybinding files to ".keys" to avoid conflict with earlier versions.
Move some code around that should never have been inside libs/ardour to begin with.
2016-02-22 15:31:24 -05:00
Paul Davis
379bc35948 update Mackie code to use new API to get all actions 2016-02-22 15:31:24 -05:00
Paul Davis
b944532f67 cleanup Bindings/ActionMap API to get all actions for various purposes 2016-02-22 15:31:24 -05:00
Paul Davis
66e0328a93 create a two-way association between an action map and a bindings object, rather than just one way.
This helps us lookup bindings when printing out lists for the user
2016-02-22 15:31:24 -05:00
Paul Davis
949163f806 more changes to Bindings, Keyboard APIs 2016-02-22 15:31:24 -05:00
Paul Davis
67e19c177f 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.
2016-02-22 15:31:24 -05:00
Paul Davis
29b69b0ab4 various fixes for saving bindings state 2016-02-22 15:31:24 -05:00
Paul Davis
f028a6bffb fix memory lifetime management issue 2016-02-22 15:31:24 -05:00
Paul Davis
36023db8aa change/extend/rework Bindings API to allow replacement and provide stub/hook/call to save bindings 2016-02-22 15:31:23 -05:00
Paul Davis
04a9ce757c initial compilable version of saving key bindings with "new" scheme 2016-02-22 15:31:23 -05:00
Paul Davis
00933950b7 small rationalization of naming and code for managing plugin GUI visibility 2016-02-22 15:31:23 -05:00
Paul Davis
e13322e7f5 bindings: prevent double registration and double signal connection, and provide get_all_actions() methods 2016-02-22 15:31:23 -05:00
Paul Davis
d0fc12bd22 remove all action-registering API from Gtkmm2ext::ActionManager 2016-02-22 15:31:23 -05:00
Paul Davis
0f17508e6c changes to Bindings and Keyboard API to support (mostly) GTK-free keyboard bindings 2016-02-22 15:31:23 -05:00
Paul Davis
077bb13e94 extend API for tabbable visibility management 2016-02-22 15:31:23 -05:00
Paul Davis
d4664434f7 set "close-button" data on Tabbable contents.
I tried doing this in the constructor and got a segfault for reasons I don't understand
but probably should
2016-02-22 15:31:23 -05:00
Paul Davis
5e0337a4a3 convert CairoIcon into a NO_WINDOW widget that just draws into its parent widget 2016-02-22 15:31:23 -05:00
Paul Davis
a48684c692 if _need_bg is set to false in a CairoWidget, then don't actually draw the background 2016-02-22 15:31:23 -05:00
Paul Davis
b6c4ae46d0 clean up tabbable state maintainance; drop Gtk::Button unintentionally used for close cross image 2016-02-22 15:31:23 -05:00
Paul Davis
d6f3a006d2 scale CairoIcon by Gtkmm2ext::UI::ui_scale 2016-02-22 15:31:23 -05:00
Paul Davis
b48c7c0180 revert to thin lines for close cross icon 2016-02-22 15:31:23 -05:00
Paul Davis
914af0f0c8 move ui_scale static member from ARDOUR_UI to GtkUI 2016-02-22 15:31:22 -05:00
Paul Davis
0819efe27c remove unused lines 2016-02-22 15:31:22 -05:00
Paul Davis
90845af8fa hopefully get dynamic tabbable menu state right this time 2016-02-22 15:31:22 -05:00
Paul Davis
e2dfc10698 thicken up lines of close cross icon 2016-02-22 15:31:22 -05:00
Paul Davis
1c41f75488 provide a sigc::signal to track display state changes for a Tabbable 2016-02-22 15:31:22 -05:00
Paul Davis
308f6ed828 changes to get show/hide/attach/detach working 2016-02-22 15:31:22 -05:00
Paul Davis
fd938d95bf change/extend Tabbable API to allow for show/hide/attach/detach 2016-02-22 15:31:22 -05:00
Paul Davis
8e14496919 use new CairoIcon to add a tab-close "button" to tabs 2016-02-22 15:31:22 -05:00
Paul Davis
e026adf4a9 second part of: add new CairoWidget-derived class that does nothing but shown an ArdourIcon. 2016-02-22 15:31:22 -05:00
Paul Davis
c06c2c29db add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
Somewhat necessary by placement of ArdourButton class in directory heirarchy. But these are also
much simpler
2016-02-22 15:31:22 -05:00
Paul Davis
434ef34229 add tab-closing buttons to tabs.
Images are non-scalable, too big and ugly. Next commit ...
2016-02-22 15:31:22 -05:00
Paul Davis
347ba94bcd add ::make_visible() to Tabbable class 2016-02-22 15:31:22 -05:00
Paul Davis
436706c8d4 remove debug output 2016-02-22 15:31:22 -05:00
Paul Davis
e46b518319 classes derived from WindowProxy are responsible for their own window creation in ::set_state().
Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs
2016-02-22 15:31:22 -05:00
Paul Davis
37fce09a18 widespread changes to get the new (oldArdour binding scheme to be used for keyboard accelerators 2016-02-22 15:31:22 -05:00
Paul Davis
d84f655495 add suggestive tooltips for tabs; remove position argument for Tabbable since it isn't really usable 2016-02-22 15:31:21 -05:00
Paul Davis
552e995297 save/restore tabbable state 2016-02-22 15:31:21 -05:00
Paul Davis
9f0ea99fac better way to switch to a tab 2016-02-22 15:31:21 -05:00
Paul Davis
03b354a99e make tabs reorderable 2016-02-22 15:31:21 -05:00
Paul Davis
a5150d500d when tearing off a tab, make the window be the same size as the allocation of the tab 2016-02-22 15:31:21 -05:00
Paul Davis
9010262bed first compilable version of tabbable design.
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
Paul Davis
85eee3b09d compilable version of WindowProxy 2016-02-22 15:31:21 -05:00
Paul Davis
a29f76c1c4 initial versions of Tabbable object 2016-02-22 15:31:21 -05:00
Paul Davis
df05e97288 first version of Gtkmm2ext::WindowProxy 2016-02-22 15:31:21 -05:00
Adrian Knoth
6fa88273aa Spelling correction patch from Debian
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch>
2016-02-22 15:13:01 -05:00
André Nusser
1afbdaff58 Fix compilation warnings. (libs part) 2016-02-22 15:11:02 -05:00
Paul Davis
86d27a736c better system for managing kbd focus after cmd-w closing a dialog.
Key, Button and Focus In events in the editor+mixer windows cause the respective window to be noted
as the window to which focus should return after a dialog is closed with cmd/ctrl-w
2016-02-22 14:03:55 -05:00
Paul Davis
60c4b30b7e manually revert most of previous commit related to dialog/main window focus management 2016-02-22 13:55:31 -05:00
Paul Davis
3a08ac5e1f os x: an initial attempt at fixing loss of keyboard focus after cmd-w to close dialog 2016-02-22 11:49:17 -05:00