add XFlush to g_timeout callbacks GMainLoop doesn't cause an flush to occur after handling a timeout.
Dana Jansens danakj@orodu.net
10 files changed,
17 insertions(+),
1 deletions(-)
M
openbox/dock.c
→
openbox/dock.c
@@ -632,6 +632,7 @@ dock_configure();
hide_timeout_id = 0; + XFlush(obt_display); return FALSE; /* don't repeat */ }@@ -643,6 +644,7 @@ dock_configure();
show_timeout_id = 0; + XFlush(obt_display); return FALSE; /* don't repeat */ }
M
openbox/event.c
→
openbox/event.c
@@ -2079,6 +2079,7 @@ event_curserial = d->serial;
if (client_focus(d->client) && config_focus_raise) stacking_raise(CLIENT_AS_WINDOW(d->client)); event_curtime = old; + XFlush(obt_display); return FALSE; /* no repeat */ }@@ -2091,6 +2092,7 @@ event_curtime = d->time;
event_curserial = d->serial; focus_nothing(); event_curtime = old; + XFlush(obt_display); return FALSE; /* no repeat */ }
M
openbox/frame.c
→
openbox/frame.c
@@ -1663,6 +1663,7 @@ frame_adjust_focus(self, self->flash_on);
self->focused = FALSE; } + XFlush(obt_display); return TRUE; /* go again */ }@@ -1760,11 +1761,11 @@ h = self->size.top; /* just the titlebar */
} XMoveResizeWindow(obt_display, self->window, x, y, w, h); - XFlush(obt_display); if (time == 0) frame_end_iconify_animation(self); + XFlush(obt_display); return time > 0; /* repeat until we're out of time */ }
M
openbox/keyboard.c
→
openbox/keyboard.c
@@ -66,6 +66,7 @@
static gboolean chain_timeout(gpointer data) { keyboard_reset_chains(0); + XFlush(obt_display); return FALSE; /* don't repeat */ }
M
openbox/moveresize.c
→
openbox/moveresize.c
@@ -462,6 +462,8 @@ {
++waiting_for_sync; /* we timed out waiting for our sync... */ do_resize(); /* ...so let any pending resizes through */ + XFlush(obt_display); + if (waiting_for_sync > SYNC_TIMEOUTS) { sync_timer = 0; return FALSE; /* don't repeat */@@ -616,6 +618,7 @@ }
} edge_warp_odd = !edge_warp_odd; + XFlush(obt_display); return TRUE; /* do repeat ! */ }
M
openbox/ping.c
→
openbox/ping.c
@@ -148,6 +148,7 @@ t->h(t->client, TRUE); /* notify that the client isn't responding */
++t->waiting; + XFlush(obt_display); return TRUE; /* repeat */ }
M
openbox/popup.c
→
openbox/popup.c
@@ -148,6 +148,7 @@ self->mapped = TRUE;
self->delay_mapped = FALSE; self->delay_timer = 0; + XFlush(obt_display); return FALSE; /* don't repeat */ }
M
openbox/screen.c
→
openbox/screen.c
@@ -940,6 +940,7 @@ static gboolean hide_desktop_popup_func(gpointer data)
{ pager_popup_hide(desktop_popup); desktop_popup_timer = 0; + XFlush(obt_display); return FALSE; /* don't repeat */ }
M
openbox/startupnotify.c
→
openbox/startupnotify.c
@@ -116,6 +116,7 @@ {
SnStartupSequence *seq = data; sn_waits = g_slist_remove(sn_waits, seq); screen_set_root_cursor(); + XFlush(obt_display); return FALSE; /* don't repeat */ }@@ -228,6 +229,7 @@ static gboolean sn_launch_wait_timeout(gpointer data)
{ SnLauncherContext *sn = data; sn_launcher_context_complete(sn); + XFlush(obt_display); return FALSE; /* don't repeat */ }