make sure that the only time Click-to-place kicks in is when initially placing/mapping the window
This commit is contained in:
parent
5705ea3613
commit
f4d29bb737
2 changed files with 6 additions and 5 deletions
|
@ -1452,7 +1452,7 @@ void OpenboxWindow::iconify(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void OpenboxWindow::deiconify(Bool reassoc, Bool raise) {
|
void OpenboxWindow::deiconify(bool reassoc, bool raise, bool initial) {
|
||||||
if (flags.iconic || reassoc)
|
if (flags.iconic || reassoc)
|
||||||
screen->reassociateWindow(this, -1, False);
|
screen->reassociateWindow(this, -1, False);
|
||||||
else if (workspace_number != screen->getCurrentWorkspace()->getWorkspaceID())
|
else if (workspace_number != screen->getCurrentWorkspace()->getWorkspaceID())
|
||||||
|
@ -1470,8 +1470,8 @@ void OpenboxWindow::deiconify(Bool reassoc, Bool raise) {
|
||||||
|
|
||||||
// if we're using the click to place placement type, then immediately
|
// if we're using the click to place placement type, then immediately
|
||||||
// after the window is mapped, we need to start interactively moving it
|
// after the window is mapped, we need to start interactively moving it
|
||||||
if (screen->placementPolicy() == BScreen::ClickMousePlacement &&
|
if (initial && place_window &&
|
||||||
place_window && !(flags.iconic || reassoc)) {
|
screen->placementPolicy() == BScreen::ClickMousePlacement) {
|
||||||
// if the last window wasn't placed yet, or we're just moving a window
|
// if the last window wasn't placed yet, or we're just moving a window
|
||||||
// already, finish off that move cleanly
|
// already, finish off that move cleanly
|
||||||
OpenboxWindow *w = openbox.getFocusedWindow();
|
OpenboxWindow *w = openbox.getFocusedWindow();
|
||||||
|
@ -2243,7 +2243,8 @@ void OpenboxWindow::mapRequestEvent(XMapRequestEvent *re) {
|
||||||
case InactiveState:
|
case InactiveState:
|
||||||
case ZoomState:
|
case ZoomState:
|
||||||
default:
|
default:
|
||||||
deiconify(False);
|
deiconify(False, True, True); // specify that we're initializing the
|
||||||
|
// window
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -321,7 +321,7 @@ public:
|
||||||
|
|
||||||
void setFocusFlag(Bool);
|
void setFocusFlag(Bool);
|
||||||
void iconify();
|
void iconify();
|
||||||
void deiconify(Bool reassoc = True, Bool raise = True);
|
void deiconify(bool reassoc = true, bool raise = true, bool initial = false);
|
||||||
void close();
|
void close();
|
||||||
void withdraw();
|
void withdraw();
|
||||||
void maximize(unsigned int button);
|
void maximize(unsigned int button);
|
||||||
|
|
Loading…
Reference in a new issue