summaryrefslogtreecommitdiff
path: root/src/Window.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Window.cc')
-rw-r--r--src/Window.cc11
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) {