summaryrefslogtreecommitdiff
path: root/gtk2_ardour/window_manager.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-05-06 12:13:43 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-05-06 12:13:43 -0400
commit81f86b11d1eef3d75e774add89ec9b8e285490e9 (patch)
tree1497c002e64c22885992ed130ca7dfc972f9e8e2 /gtk2_ardour/window_manager.cc
parent128b3749542f310ce2c3b66d9ba792c9bfd15cb9 (diff)
drop WIN_POS_MOUSE on a managed window if we have stored coordinates and after the first present() call
Diffstat (limited to 'gtk2_ardour/window_manager.cc')
-rw-r--r--gtk2_ardour/window_manager.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/gtk2_ardour/window_manager.cc b/gtk2_ardour/window_manager.cc
index f50fe444a8..cb63f4f822 100644
--- a/gtk2_ardour/window_manager.cc
+++ b/gtk2_ardour/window_manager.cc
@@ -278,6 +278,11 @@ WindowManager::ProxyBase::setup ()
vistracker = new Gtkmm2ext::VisibilityTracker (*_window);
+ if (_width != -1 || _height != -1 || _x_off != -1 || _y_off != -1) {
+ /* cancel any mouse-based positioning */
+ _window->set_position (Gtk::WIN_POS_NONE);
+ }
+
if (_width != -1 && _height != -1) {
_window->set_default_size (_width, _height);
}
@@ -316,6 +321,9 @@ WindowManager::ProxyBase::present ()
Gtk::Window* win = get (true);
win->show_all ();
win->present ();
+
+ /* turn off any mouse-based positioning */
+ _window->set_position (Gtk::WIN_POS_NONE);
}
void