From 1ae13433563c42b26b1212e0ce53293f7b626aa5 Mon Sep 17 00:00:00 2001 From: gotmor Date: Tue, 17 Jul 2007 10:41:34 +0000 Subject: speed up expose handling, do less redrawing git-svn-id: http://dzen.googlecode.com/svn/trunk@127 f2baff5b-bf2c-0410-a398-912abdc3d8b2 --- main.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'main.c') diff --git a/main.c b/main.c index 4e14548..bd8c800 100644 --- a/main.c +++ b/main.c @@ -459,10 +459,14 @@ handle_xev(void) { && ev.xexpose.window == dzen.title_win.win) drawheader(NULL); if(ev.xexpose.window == dzen.slave_win.win) - x_draw_body();; - for(i=0; i < dzen.slave_win.max_lines; i++) - if(ev.xcrossing.window == dzen.slave_win.line[i]) - x_draw_body(); + x_draw_body(); + else { + for(i=0; i < dzen.slave_win.max_lines; i++) + if(ev.xcrossing.window == dzen.slave_win.line[i]) { + XCopyArea(dzen.dpy, dzen.slave_win.drawable[i], dzen.slave_win.line[i], dzen.gc, + 0, 0, dzen.slave_win.width, dzen.line_height, 0, 0); + } + } } break; case EnterNotify: @@ -558,6 +562,7 @@ handle_newl(void) { else if(wa.map_state == IsUnmapped || !dzen.slave_win.last_line_vis) { dzen.slave_win.first_line_vis = 0; dzen.slave_win.last_line_vis = 0; + x_draw_body(); } last_cnt = dzen.slave_win.tcnt; } -- cgit v1.2.3-54-g00ecf