diff options
| author | Dana Jansens <danakj@orodu.net> | 2008-01-25 00:35:31 -0500 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2008-01-25 00:48:45 -0500 |
| commit | 3febcbb9ae6a31edbd64a86f0045148bb052fcff (patch) | |
| tree | 3ce99eaba3e7dc241dfc41ac7a9dcdc53f4b3bea /openbox/stacking.c | |
| parent | aa5f7e7dca0054c0a015e34eeae128890901627f (diff) | |
skip enter events caused by temporarily raising windows during alt-tab. also caused by the focus cycle indicator moving
Diffstat (limited to 'openbox/stacking.c')
| -rw-r--r-- | openbox/stacking.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/openbox/stacking.c b/openbox/stacking.c index b18c02af..63819ae2 100644 --- a/openbox/stacking.c +++ b/openbox/stacking.c @@ -114,6 +114,7 @@ void stacking_temp_raise(ObWindow *window) { Window win[2]; GList *it; + gulong start; /* don't use this for internal windows..! it would lower them.. */ g_assert(window_layer(window) < OB_STACKING_LAYER_INTERNAL); @@ -129,7 +130,9 @@ void stacking_temp_raise(ObWindow *window) } win[1] = window_top(window); + start = event_start_ignore_all_enters(); XRestackWindows(ob_display, win, 2); + event_end_ignore_all_enters(start); pause_changes = TRUE; } @@ -139,12 +142,15 @@ void stacking_restore(void) Window *win; GList *it; gint i; + gulong start; win = g_new(Window, g_list_length(stacking_list) + 1); win[0] = screen_support_win; for (i = 1, it = stacking_list; it; ++i, it = g_list_next(it)) win[i] = window_top(it->data); + start = event_start_ignore_all_enters(); XRestackWindows(ob_display, win, i); + event_end_ignore_all_enters(start); g_free(win); pause_changes = FALSE; |
