summaryrefslogtreecommitdiff
path: root/gtk2_ardour/plugin_ui.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-04-09 21:05:58 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-04-09 21:05:58 +0000
commitedab5bb5239573559aaccb7ce9afffac5435f496 (patch)
tree9d1336244e6b33cd4cbb792aab3581f2263d4396 /gtk2_ardour/plugin_ui.cc
parent5a484d8f361c2ca2bb9e6efd460f4879176855eb (diff)
fixes for AU plugin GUIs, including the "hidden GUI shows up when app becomes active/focus again" bug
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3241 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/plugin_ui.cc')
-rw-r--r--gtk2_ardour/plugin_ui.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index ce81f486d7..3c34593c87 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -66,6 +66,7 @@ PluginUIWindow::PluginUIWindow (Gtk::Window* win, boost::shared_ptr<PluginInsert
{
bool have_gui = false;
non_gtk_gui = false;
+ was_visible = false;
if (insert->plugin()->has_editor()) {
switch (insert->type()) {
@@ -156,7 +157,6 @@ PluginUIWindow::on_show ()
Window::on_show ();
if (parent) {
- cerr << "plugin becomes transient for " << parent << endl;
// set_transient_for (*parent);
}
}
@@ -218,9 +218,13 @@ PluginUIWindow::app_activated (bool yn)
cerr << "APP activated ? " << yn << endl;
if (_pluginui) {
if (yn) {
- _pluginui->activate ();
- present ();
+ if (was_visible) {
+ _pluginui->activate ();
+ present ();
+ was_visible = true;
+ }
} else {
+ was_visible = is_visible();
hide ();
_pluginui->deactivate ();
}