From 5e3ca8e66586a6dab4793cef04a3de98dc2ecfbe Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sun, 28 Apr 2002 19:14:54 +0000 Subject: [PATCH] don't click-to-place windows when they specify a position --- src/Window.cc | 8 ++++---- src/Window.h | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Window.cc b/src/Window.cc index 8df9ddfe..cff95ec6 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -216,7 +216,7 @@ OpenboxWindow::OpenboxWindow(Openbox &o, Window w, BScreen *s) : openbox(o) { } upsize(); - Bool place_window = True; + place_window = true; if (openbox.isStartup() || flags.transient || client.normal_hint_flags & (PPosition|USPosition)) { setGravityOffsets(); @@ -226,7 +226,7 @@ OpenboxWindow::OpenboxWindow(Openbox &o, Window w, BScreen *s) : openbox(o) { (signed) (frame.y + frame.y_border) >= 0 && frame.x <= (signed) screen->size().w() && frame.y <= (signed) screen->size().h())) - place_window = False; + place_window = false; } frame.window = createToplevelWindow(frame.x, frame.y, frame.width, @@ -1467,8 +1467,8 @@ void OpenboxWindow::deiconify(Bool reassoc, Bool raise) { // if we're using the click to place placement type, then immediately // after the window is mapped, we need to start interactively moving it - if (!(flags.iconic || reassoc) && - screen->placementPolicy() == BScreen::ClickMousePlacement) { + if (screen->placementPolicy() == BScreen::ClickMousePlacement && + place_window && !(flags.iconic || reassoc)) { // if the last window wasn't placed yet, or we're just moving a window // already, finish off that move cleanly OpenboxWindow *w = openbox.getFocusedWindow(); diff --git a/src/Window.h b/src/Window.h index faaf9a00..66a3049e 100644 --- a/src/Window.h +++ b/src/Window.h @@ -78,6 +78,7 @@ private: int window_number, workspace_number; unsigned long current_state; + bool place_window; // place the window ourselves when mapped enum FocusMode { F_NoInput = 0, F_Passive, F_LocallyActive, F_GloballyActive }; -- 2.45.2