summaryrefslogtreecommitdiff
path: root/openbox/screen.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-06-03 19:09:32 +0000
committerDana Jansens <danakj@orodu.net>2007-06-03 19:09:32 +0000
commit4940d007cce43a135f1b448902f5a3571dbce62a (patch)
tree4c5c0a9e25dc7f8b9c55634df3ccaa6fe816ddf7 /openbox/screen.c
parent097d02d9d3d4b2eeea11084c54812de9cd7d14c0 (diff)
super amazing enter event skipping.
also mucho fixed for <underMouse>
Diffstat (limited to 'openbox/screen.c')
-rw-r--r--openbox/screen.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/openbox/screen.c b/openbox/screen.c
index 7b4ca740..5f1991d3 100644
--- a/openbox/screen.c
+++ b/openbox/screen.c
@@ -542,6 +542,7 @@ void screen_set_desktop(guint num, gboolean dofocus)
ObClient *c;
GList *it;
guint old;
+ gulong ignore_start;
g_assert(num < screen_num_desktops);
@@ -557,6 +558,9 @@ void screen_set_desktop(guint num, gboolean dofocus)
ob_debug("Moving to desktop %d\n", num+1);
+ /* ignore enter events caused by the move */
+ ignore_start = event_start_ignore_all_enters();
+
if (moveresize_client)
client_set_desktop(moveresize_client, num, TRUE);
@@ -606,7 +610,7 @@ void screen_set_desktop(guint num, gboolean dofocus)
}
}
- event_ignore_all_queued_enters();
+ event_end_ignore_all_enters(ignore_start);
if (event_curtime != CurrentTime)
screen_desktop_user_time = event_curtime;