all repos — openbox @ aa3685d16af4a565eecdc39047ee8d140ef5cd99

openbox fork - make it a bit more like ryudo

add XFlush to g_timeout callbacks

GMainLoop doesn't cause an flush to occur after handling a timeout.
Dana Jansens danakj@orodu.net
commit

aa3685d16af4a565eecdc39047ee8d140ef5cd99

parent

79cf72d17ff42e5bc8eb1adbd98bb42aa71fb085

M openbox/dock.copenbox/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.copenbox/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.copenbox/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.copenbox/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/menuframe.copenbox/menuframe.c

@@ -1158,6 +1158,7 @@ static gboolean submenu_show_timeout(gpointer data)

{ g_assert(menu_frame_visible); menu_entry_frame_show_submenu((ObMenuEntryFrame*)data); + XFlush(obt_display); return FALSE; }

@@ -1165,6 +1166,7 @@ static gboolean submenu_hide_timeout(gpointer data)

{ g_assert(menu_frame_visible); menu_frame_hide((ObMenuFrame*)data); + XFlush(obt_display); return FALSE; }
M openbox/moveresize.copenbox/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.copenbox/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.copenbox/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.copenbox/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.copenbox/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 */ }