From 6e69baffb1fdeb77ac0c9ee24507c942e1f11b9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sun, 16 Apr 2006 13:49:41 +0000 Subject: [PATCH] Desktop::SendBehindWindow() now checks if the window is on the current workspace, and do nothing if not. This fixes bug #442. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17140 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/Desktop.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/servers/app/Desktop.cpp b/src/servers/app/Desktop.cpp index c11c4c92af..10ad96f2a9 100644 --- a/src/servers/app/Desktop.cpp +++ b/src/servers/app/Desktop.cpp @@ -1261,7 +1261,12 @@ Desktop::ActivateWindow(WindowLayer* window) void Desktop::SendWindowBehind(WindowLayer* window, WindowLayer* behindOf) { - if (window == BackWindow() || !LockAllWindows()) + // TODO: should the "not in current workspace" be handled anyway? + // (the code below would have to be changed then, though) + if (window == BackWindow() + || !window->InWorkspace(fCurrentWorkspace) + || (behindOf != NULL && !behindOf->InWorkspace(fCurrentWorkspace)) + || !LockAllWindows()) return; // Is this a valid behindOf window?