Commit Graph

34 Commits

Author SHA1 Message Date
d1b462c213 Special case tansient-parent windows on macOS
macOS has its own z-axis stacking (see Manager::set_transient_for) for
dialog and utility windows of a single application. There only case to
set a dedicated transient parent is to keep the child window on top of a
dialog.

Valid use-cases are e.g.
 Plugin Preset Name entry on top of a PluginWindow
 Export Format Settings on top of the Export Dialog

Alternatively one would need to patch gtk to handle
[NSView shouldDelayWindowOrderingForEvent] and explicitly reorder
siblings of a common parent window.

This fixes an issue that plugin windows cannot be re-stacked but were
previously always stacked in the order they were opened.
2022-11-15 03:07:43 +01:00
c456006f82
Enable some key release event forwarding
This is needed for the virtual MIDI keyboard to trigger note-off events
2019-11-22 22:12:48 +01:00
4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
01a43c6b1e
Another round of whitespace fixes 2019-04-09 00:27:33 +02:00
ba37a6bd36 no more ProxyTemporary member of ArdourWindow - all such windows should be wrapped in an explicit proxy in ARDOUR_UI 2018-09-23 13:48:19 -04:00
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
4cc1286064 fix use of DIALOG/UTILITY window type hint on OS X.
See code comments for details
2016-04-13 13:00:05 -04:00
f178c4f4ee make (parent,title) variant of ArdourWindow constructor set window title 2015-12-01 09:23:08 -05:00
nick_m
f46d3dbfaf New non-parented windows are initially positioned at WIN_POS_MOUSE again. 2015-10-20 00:53:30 +11:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
6b019a4953 Move UIConfiguration Singleton into UIConfiguration header
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
f201b19604 reverse logic in ArdourWindow key handling 2015-04-01 14:01:21 -04:00
57613dc0cc ArdourDialog and ArdourWindow don't change magic widget focus 2015-04-01 12:44:35 -04:00
nick_m
c94d352f56 Potential fix for AU window close crash. 2015-04-02 03:32:21 +11:00
nick_m
35f69656e8 Window focus handling fixes.
Many windows were not getting key events.
Use magic focus infrastructure (built for widgets) to deliver key events
via window focus in/out.
2015-04-02 02:41:49 +11:00
nick_m
8a37c1cd83 Non-transient ArdourDialogs and ArdourWindows appear in the centre
of the screen initially (first use in a new session) rather than at
the mouse position.
2015-03-15 06:25:06 +11:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
38f2aa51bd Merge branch 'master' into cairocanvas 2013-07-09 09:11:52 -04:00
07be5beee7 window delete/hide is managed by WMProxy (amend to cb6f16ac) 2013-07-07 22:29:45 +02:00
bebe2af95a merge with master 2013-05-08 14:48:28 -04:00
bedc7b170e change namespace/naming of WindowManager classes; register all ArdourDialog and ArdourWindow classes as ProxyTemporary windows so that transient-for can be set for all such windows 2013-05-07 22:09:16 -04:00
87d502c15b work work on window mgmt: offer the change to mark all floating windows as Dialogs (in th theme manager), and mark ArdourWindow and ArdourDialog as transient-for on creation, based on current WindowManager (ardour-object) settings 2013-05-07 18:09:12 -04:00
f96a5c2a95 make ArdourDialog and ArdourWindow call ::relay_key_press() which fixes the "not-toggleable-on-first-show" and other issues 2013-05-06 10:58:35 -04:00
65b6f8efad more window management rationalization 2013-05-05 16:10:54 -04:00
074ef3c859 fix bigclockwindow's lack of hiding, set ArdourWindow to just-hide-on-delete and add a bit of visibility tracking debugging 2013-05-05 15:07:52 -04:00
6fd66bd467 move CloseAllDialogs signal and associated method from ArdourDialog to ARDOUR_UI, and make ArdourWindow obey it too 2013-05-02 21:13:36 -04:00
3973ce81b3 remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works 2013-05-02 18:13:35 -04:00
d88999312a force ArdourWindows to be TYPE_UTILITY so that they float "with" TYPE_DIALOG windows (at least on OS X - still to be tested on X Window 2013-05-02 10:10:05 -04:00
7c19d00544 use new VisibilityTracker class for ArdourWindow 2013-03-25 20:04:36 -04:00
4235e9a1a2 a variety of mostly unused parameter errors from OS X Lion's compiler
git-svn-id: svn://localhost/ardour2/branches/3.0@12148 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-02 20:29:46 +00:00
2b4d07e304 make the "with-parent" constructor for ArdourWindow actually work by calling set_transient_for
git-svn-id: svn://localhost/ardour2/branches/3.0@11080 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 23:17:33 +00:00
5770f26bc9 Add ArdourWindow class for non-dialog windows.
Make IOSelector an ArdourWindow.

It's debatable whether this one should actually be a window, cancel buttons
might actually be useful on the IO selector.


git-svn-id: svn://localhost/ardour2/branches/3.0@10691 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-18 21:56:01 +00:00