diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-05-23 14:27:52 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-05-23 14:27:52 +0000 |
| commit | 67b4df1eff614c79bca956615a514bb5bb211af8 (patch) | |
| tree | 56f72fe3bed7251558ab8bff0961acb10cecffbc /src/Window.cc | |
| parent | a25b213aff1ec7450b5d61c20cf3c8e0f918ee28 (diff) | |
merge the sticky window fix from 1.2.
Diffstat (limited to 'src/Window.cc')
| -rw-r--r-- | src/Window.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Window.cc b/src/Window.cc index 3f531d52..342864c9 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -314,9 +314,14 @@ OpenboxWindow::~OpenboxWindow(void) { XUngrabPointer(display, CurrentTime); } - if (workspace_number != -1 && window_number != -1) - screen->getWorkspace(workspace_number)->removeWindow(this); - else if (flags.iconic) + if (workspace_number != -1 && window_number != -1) { + if (flags.stuck) { + // make sure no other workspaces think that we're focused + for (int i=0; i < screen->getWorkspaceCount(); i++) + screen->getWorkspace(i)->removeWindow(this); + } else + screen->getWorkspace(workspace_number)->removeWindow(this); + } else if (flags.iconic) screen->removeIcon(this); if (timer) { |
