summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-07 22:24:15 +0200
committerRobin Gareus <robin@gareus.org>2013-07-07 22:29:45 +0200
commit07be5beee7941a193fd55b584e72dbd9c8bea6fb (patch)
treec5d9c15dc56f584064bfcac1b2bc0401bdf928d2 /gtk2_ardour
parent2b0fef5933e51a29d5b6bc0ef89146de35c88e81 (diff)
window delete/hide is managed by WMProxy (amend to cb6f16ac)
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_window.cc1
-rw-r--r--gtk2_ardour/io_selector.cc3
-rw-r--r--gtk2_ardour/location_ui.cc3
-rw-r--r--gtk2_ardour/plugin_ui.cc1
-rw-r--r--gtk2_ardour/port_insert_ui.cc2
-rw-r--r--gtk2_ardour/region_editor.cc1
-rw-r--r--gtk2_ardour/return_ui.cc1
-rw-r--r--gtk2_ardour/route_params_ui.cc5
-rw-r--r--gtk2_ardour/send_ui.cc4
-rw-r--r--gtk2_ardour/step_editor.cc2
-rw-r--r--gtk2_ardour/window_manager.cc15
11 files changed, 13 insertions, 25 deletions
diff --git a/gtk2_ardour/ardour_window.cc b/gtk2_ardour/ardour_window.cc
index 3d33b14e60..ab9d72dd53 100644
--- a/gtk2_ardour/ardour_window.cc
+++ b/gtk2_ardour/ardour_window.cc
@@ -84,7 +84,6 @@ ArdourWindow::on_unmap ()
bool
ArdourWindow::on_delete_event (GdkEventAny*)
{
- hide ();
return false;
}
diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc
index 544963f666..31f8cfa1cb 100644
--- a/gtk2_ardour/io_selector.cc
+++ b/gtk2_ardour/io_selector.cc
@@ -235,8 +235,7 @@ bool
IOSelectorWindow::wm_delete (GdkEventAny* /*event*/)
{
_selector.Finished (IOSelector::Accepted);
- hide ();
- return true;
+ return false;
}
diff --git a/gtk2_ardour/location_ui.cc b/gtk2_ardour/location_ui.cc
index d30327ad78..92f11da019 100644
--- a/gtk2_ardour/location_ui.cc
+++ b/gtk2_ardour/location_ui.cc
@@ -1165,8 +1165,7 @@ LocationUIWindow::on_map ()
bool
LocationUIWindow::on_delete_event (GdkEventAny*)
{
- hide ();
- return true;
+ return false;
}
void
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index 9a85b78454..d9741f5e39 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -148,7 +148,6 @@ PluginUIWindow::PluginUIWindow (
set_name ("PluginEditor");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
- signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window*> (this)), false);
insert->DropReferences.connect (death_connection, invalidator (*this), boost::bind (&PluginUIWindow::plugin_going_away, this), gui_context());
gint h = _pluginui->get_preferred_height ();
diff --git a/gtk2_ardour/port_insert_ui.cc b/gtk2_ardour/port_insert_ui.cc
index 16beb75877..0511b357db 100644
--- a/gtk2_ardour/port_insert_ui.cc
+++ b/gtk2_ardour/port_insert_ui.cc
@@ -184,7 +184,7 @@ bool
PortInsertWindow::wm_delete (GdkEventAny* /*event*/)
{
accept ();
- return true;
+ return false;
}
void
diff --git a/gtk2_ardour/region_editor.cc b/gtk2_ardour/region_editor.cc
index 51e4deddc8..564938ad5c 100644
--- a/gtk2_ardour/region_editor.cc
+++ b/gtk2_ardour/region_editor.cc
@@ -161,7 +161,6 @@ RegionEditor::RegionEditor (Session* s, boost::shared_ptr<Region> r)
set_name ("RegionEditorWindow");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
- signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), static_cast<Window *> (this)));
signal_response().connect (sigc::mem_fun (*this, &RegionEditor::handle_response));
set_title (string_compose (_("Region '%1'"), _region->name()));
diff --git a/gtk2_ardour/return_ui.cc b/gtk2_ardour/return_ui.cc
index 8120534b7d..592fff0a0e 100644
--- a/gtk2_ardour/return_ui.cc
+++ b/gtk2_ardour/return_ui.cc
@@ -111,7 +111,6 @@ ReturnUIWindow::ReturnUIWindow (boost::shared_ptr<Return> r, ARDOUR::Session* s)
set_name ("ReturnUIWindow");
r->DropReferences.connect (going_away_connection, invalidator (*this), boost::bind (&ReturnUIWindow::return_going_away, this), gui_context());
- signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window *> (this)));
}
ReturnUIWindow::~ReturnUIWindow ()
diff --git a/gtk2_ardour/route_params_ui.cc b/gtk2_ardour/route_params_ui.cc
index 56ed380404..e9ddb54d41 100644
--- a/gtk2_ardour/route_params_ui.cc
+++ b/gtk2_ardour/route_params_ui.cc
@@ -146,11 +146,6 @@ RouteParams_UI::RouteParams_UI ()
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_RELEASE_MASK);
_plugin_selector = new PluginSelector (PluginManager::instance());
- _plugin_selector->signal_delete_event().connect (sigc::bind (ptr_fun (just_hide_it),
- static_cast<Window *> (_plugin_selector)));
-
-
- signal_delete_event().connect(sigc::bind(ptr_fun(just_hide_it), static_cast<Gtk::Window *>(this)));
}
RouteParams_UI::~RouteParams_UI ()
diff --git a/gtk2_ardour/send_ui.cc b/gtk2_ardour/send_ui.cc
index e9699f2cfe..4a16c57259 100644
--- a/gtk2_ardour/send_ui.cc
+++ b/gtk2_ardour/send_ui.cc
@@ -133,10 +133,6 @@ SendUIWindow::SendUIWindow (boost::shared_ptr<Send> s, Session* session)
hpacker.show ();
s->DropReferences.connect (going_away_connection, invalidator (*this), boost::bind (&SendUIWindow::send_going_away, this), gui_context());
-
- signal_delete_event().connect (sigc::bind (
- sigc::ptr_fun (just_hide_it),
- reinterpret_cast<Window *> (this)));
}
SendUIWindow::~SendUIWindow ()
diff --git a/gtk2_ardour/step_editor.cc b/gtk2_ardour/step_editor.cc
index a75f0f98e4..11ac6c3187 100644
--- a/gtk2_ardour/step_editor.cc
+++ b/gtk2_ardour/step_editor.cc
@@ -149,7 +149,7 @@ bool
StepEditor::step_editor_hidden (GdkEventAny*)
{
step_editor_hide ();
- return true;
+ return true; // XXX remember position ?!
}
void
diff --git a/gtk2_ardour/window_manager.cc b/gtk2_ardour/window_manager.cc
index d15028ac13..629e24419b 100644
--- a/gtk2_ardour/window_manager.cc
+++ b/gtk2_ardour/window_manager.cc
@@ -302,8 +302,10 @@ ProxyBase::get_state () const
/* we have a window, so use current state */
_visible = vistracker->partially_visible ();
- _window->get_position (_x_off, _y_off);
- _window->get_size (_width, _height);
+ if (_visible) {
+ _window->get_position (_x_off, _y_off);
+ _window->get_size (_width, _height);
+ }
}
node->add_property (X_("visible"), _visible? X_("yes") : X_("no"));
@@ -410,15 +412,16 @@ ProxyBase::hide ()
bool
ProxyBase::handle_win_event (GdkEventAny *ev)
{
- save_pos_and_size();
- return 0;
+ hide();
+ return true;
}
void
ProxyBase::save_pos_and_size ()
{
- _window->get_position (_x_off, _y_off);
- _window->get_size (_width, _height);
+ Gtk::Window* win = get (false);
+ win->get_position (_x_off, _y_off);
+ win->get_size (_width, _height);
}
/*-----------------------*/