summaryrefslogtreecommitdiff
path: root/gtk2_ardour/window_manager.cc
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/window_manager.cc
parent2b0fef5933e51a29d5b6bc0ef89146de35c88e81 (diff)
window delete/hide is managed by WMProxy (amend to cb6f16ac)
Diffstat (limited to 'gtk2_ardour/window_manager.cc')
-rw-r--r--gtk2_ardour/window_manager.cc15
1 files changed, 9 insertions, 6 deletions
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);
}
/*-----------------------*/