If redrawing the region would mean redrawing > half the pane, just schedule to

redraw the entire window. Also add a flag to skip updating the window any
further if it is scheduled to be redrawn. This has the effect of batching
multiple redraws together.
This commit is contained in:
Nicholas Marriott
2009-04-02 20:30:23 +00:00
parent b38f6608c7
commit 84cde92c8f
6 changed files with 51 additions and 39 deletions

View File

@ -1,4 +1,4 @@
/* $Id: server-fn.c,v 1.57 2009-03-07 09:42:13 nicm Exp $ */
/* $Id: server-fn.c,v 1.58 2009-04-02 20:30:20 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -146,6 +146,7 @@ server_redraw_window(struct window *w)
if (c->session->curw->window == w)
server_redraw_client(c);
}
w->flags |= WINDOW_REDRAW;
}
void