summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-08-21 09:50:47 +0000
committerDana Jansens <danakj@orodu.net>2002-08-21 09:50:47 +0000
commitd181f1ad05332c42eb090384666171a142f54b0c (patch)
treed2378117b3ed27bb1f84c6b78fd374c07b9c2127 /src
parentd7a655137bdb7f02cb79714e7d92aa0c26a55520 (diff)
dont grab other windows while warping in opaque mode
Diffstat (limited to 'src')
-rw-r--r--src/Window.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Window.cc b/src/Window.cc
index b129121c..d696161e 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -3135,6 +3135,9 @@ void BlackboxWindow::doWorkspaceWarping(int x_root, int y_root, int &dx) {
screen->reassociateWindow(this, dest, False);
screen->changeWorkspaceID(dest);
+ if (screen->doOpaqueMove())
+ XGrabServer(blackbox->getXDisplay());
+
XUngrabPointer(blackbox->getXDisplay(), CurrentTime);
XWarpPointer(blackbox->getXDisplay(), None,
screen->getRootWindow(), 0, 0, 0, 0,
@@ -3144,6 +3147,9 @@ void BlackboxWindow::doWorkspaceWarping(int x_root, int y_root, int &dx) {
GrabModeAsync, GrabModeAsync,
None, blackbox->getMoveCursor(), CurrentTime);
+ if (screen->doOpaqueMove())
+ XUngrabServer(blackbox->getXDisplay());
+
if (focus)
setInputFocus();