diff options
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) { |
