Robin Gareus
16030f63a1
Keep Ardour dialog on top of parent
2023-06-10 21:36:31 +02:00
Paul Davis
f8469a49ed
fix compilation
2022-12-12 10:20:02 -07:00
Paul Davis
095b84080a
ArdourDialog: API to prevent idle callbacks during response handling
2022-12-12 10:15:55 -07:00
itmuckel
77356c0ebb
Reformat and remove unused imports
2022-05-13 23:07:49 +02:00
Robin Gareus
e406a1bd41
Mark non-modal dialogs as utility windows
...
This addresses an issue with gnome and mate, where
dialog windows do not have a window close button,
and expect direct interaction with the user "OK/Cancel",
"Yes/No", etc.
2021-07-22 05:45:30 +02:00
Robin Gareus
f715edf7bc
Yet Another Splash Push/Pop Fix
...
Don't explicitly `show()` the splash when a message arrives.
On macOS and Windows the splash is not z-axis re-stacked but
hidden. Calling show() makes it visible again.
2021-06-28 15:52:32 +02:00
Robin Gareus
8237add6d2
Keep track of splash visibility behind dialogs
...
This fixes various issues, esp on macOS and Windows where
the window is only hidden, not re-stacked:
* plugin scan dialog hides the splash, but
the plugin-manager emits BootMessage
(this worked mostly because gtk event loop didn't
have time to catch up)
* More than one dialog can pop back/front the splash,
e.g. scripted session-setup or error messages when
loading recent sessions.
2021-06-23 17:55:01 +02:00
Paul Davis
f2ee30c0ec
add ArdourDialog::set_ui_sensitive() to provide a way to mark an arbitrary ArdourDialog as "should not respond to user input"
2020-01-24 15:56:37 -07:00
Robin Gareus
0ad9c3de1a
Fix another stuck splash screen
...
Don't allow dialogs to re-create the splash only to hide it.
2020-01-17 18:52:33 +01:00
Paul Davis
4abdfe19d1
don't inadvertently create a Splash when a dialog is shown
2019-10-24 21:32:46 -06:00
Robin Gareus
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
Robin Gareus
e42699600b
Delete temporary Window Proxy for dialogs
...
There are two cases:
(A) Proxy is created first, dialog is created later on demand
(B) Dialog is created and directly registers its window as proxy
In (B) the dialog is usually on the stack and destroyed when the
ArdourDialog instances leaves scope. In that case ~ArdourDialog()
is called and the proxy remained.
Destroying the proxy does destroy the registered window in ~WindowProxy()
If ArdourDialog's d'tor itself deletes the proxy it would recurse into
itself. Existing APIs e.g. drop_window() likewise delete the window and
cannot be safely called from ~ArdourDialog.
2018-11-29 14:25:22 +01:00
Robin Gareus
d9767b10ac
Fix another crash at exit.
...
During ARDOUR_UI::finish(), after destroying various instances:
close_all_dialogs() -> ArdourDialog::on_response() -> GUIIdle()
The event loop recurses and may execute a previously scheduled
Editor::idle_visual_changer()
2017-07-03 14:03:10 +02:00
Robin Gareus
057bb167ca
Run gtk-main iteration after hiding dialogs
2017-04-20 23:15:13 +02:00
Robin Gareus
3e43585fa1
Pop splash on dialog response - not d'tor.
...
A Dialog Window may not be tightly scoped, and may be around
for a while (query settings from the dialog instance). The destructor
may only be called later.
2017-04-01 16:40:07 +02:00
Robin Gareus
dae7e8dbd3
NO-OP: whitespace
2017-04-01 15:56:35 +02:00
Paul Davis
207fa93cf9
when destroying an ArdourDialog, be sure the Keyboard object knows about it.
...
It seems that there are ways to destroy a window without it emitting focus out
2016-06-07 18:28:32 -04:00
nick_m
3fb3b85e3e
Default to WIN_POS_MOUSE for dialogs also.
2015-10-20 00:53:31 +11:00
Paul Davis
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
Paul Davis
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
Robin Gareus
a3c378cf62
move utility functions into a dedicated namespace
2014-06-25 21:47:54 +02:00
Robin Gareus
e977b659af
fix keyboard shorcuts in dialogs.
...
actually, for most dialogs, key-presses should never
be relayed. a get_modal() check might be the appropriate.
2014-06-14 00:22:32 +02:00
Paul Davis
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
Paul Davis
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
Paul Davis
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
Paul Davis
65b6f8efad
more window management rationalization
2013-05-05 16:10:54 -04:00
Paul Davis
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
Paul Davis
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
Paul Davis
a9341bd5f0
improve relationship between ArdourDialog and Splash on OS X, where window restacking doesn't really work the way we need it to. more complex than anticipated because it seems that destroying a Gtk::Dialog does not emit its hide() or unmap() or unmap_event() signals
2013-04-30 13:50:45 -04:00
Paul Davis
b53c92b652
the return of the splash, with a few changes to help with window layering a little
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-10 18:21:39 +00:00
David Robillard
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
David Robillard
cd4e803f60
Clean up ArdourDialog.
...
Remove undefined static ArdourDialog::close_all_current_dialogs.
Remove pointless ArdourDialog::on_key_press_event.
Defer to Gtk::Dialog::on_[enter|leave]_notify_event. I'm not sure exactly
what these currently do, but not calling it doesn't seem like a good idea.
Trim include tree ever so slightly.
git-svn-id: svn://localhost/ardour2/branches/3.0@10690 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-18 21:03:21 +00:00
Paul Davis
f6fdd8dcbf
switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
Paul Davis
8687895abb
remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
Paul Davis
64dc5427e4
make all use of bind/mem_fun be explicitly sigc::
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
Paul Davis
7703f0a76a
move generic parts of Keyboard into gtkmm2ext. imperfectly done, but makes modifiers available in libgtkmm2ext now
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 22:51:32 +00:00
David Robillard
bb9cc45cd2
Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
...
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent...
git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
Carl Hetherington
3b89d9eaa0
Remove most using declarations from header files.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12 17:03:42 +00:00
Paul Davis
bc89fe0147
most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 14:43:24 +00:00
Paul Davis
1c299d5a5c
merge Sakari's (sbergen) branch back into 3.0, removing libsndfile and adding taglib
...
git-svn-id: svn://localhost/ardour2/branches/3.0@3736 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-17 08:44:51 +00:00
David Robillard
80c3677c83
Merge with 2.0-ongoing R2988
...
git-svn-id: svn://localhost/ardour2/branches/3.0@2991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-02 17:22:04 +00:00
Paul Davis
f7f9d6fdc4
merge from 2.0-ongoing by hand, minus key binding editor
...
git-svn-id: svn://localhost/ardour2/trunk@2539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-11 22:07:47 +00:00
Taybin Rutkin
fd20404daa
Updates for set_type_hint() and the sfdb_ui.
...
git-svn-id: svn://localhost/trunk/ardour2@239 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-01-04 05:53:51 +00:00
Paul Davis
f69c9ed564
lots and lots of keybindings working again, with lots more menu items
...
git-svn-id: svn://localhost/trunk/ardour2@209 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-12-24 18:25:26 +00:00
Paul Davis
3436df6eab
the usual blob of fixes. note the requirement for ComboBoxText::set_active_text()
...
git-svn-id: svn://localhost/trunk/ardour2@160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-12-02 19:18:26 +00:00
Paul Davis
1f16781c75
slowly fixing up ArdourDialog nonsense
...
git-svn-id: svn://localhost/trunk/ardour2@132 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-27 21:17:41 +00:00
Paul Davis
fb45ffea71
strip keyboard.cc of noxious focus handling stuff, and cleanup
...
git-svn-id: svn://localhost/trunk/ardour2@106 d708f5d6-7413-0410-9779-e7cbd77b26cf
2005-11-23 04:13:32 +00:00