The monitor_redraw() function unconditionally rearranges the visible
clients when it is called. However, if redrawing was not explicitly
requested, this is not necessary.
This commit changes the monitor_redraw() function not to rearrange
clients if a redraw is not necessary, so that only the status bar
and indicators will be redrawn.
int monitor_redraw(struct monitor *monitor)
{
- monitor_arrange_clients(monitor);
-
if(monitor->needs_redraw) {
+ monitor_arrange_clients(monitor);
monitor_draw_clients(monitor);
- /* monitor_draw(monitor); */
- /* monitor_draw_bar() */
monitor->needs_redraw = 0;
}
_redraw_statusbar(monitor);
monitor_redraw_indicators(monitor);
- XSync(mwm_get_display(monitor->mwm), False);
-
return(0);
}