aboutsummaryrefslogtreecommitdiffstats
path: root/main.c
diff options
context:
space:
mode:
authorgotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2007-06-11 13:20:22 +0000
committergotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2007-06-11 13:20:22 +0000
commit072fe88a5d2be716825f25c5819c2ff057b48a11 (patch)
treed94b686d8d65b76926601bbf0406ab644ee0e675 /main.c
parentbaa69108659637171bf24ccc5cafe5adb302aaf7 (diff)
downloaddzen-072fe88a5d2be716825f25c5819c2ff057b48a11.tar.gz
dzen-072fe88a5d2be716825f25c5819c2ff057b48a11.zip
only redraw if really necessary
git-svn-id: http://dzen.googlecode.com/svn/trunk@81 f2baff5b-bf2c-0410-a398-912abdc3d8b2
Diffstat (limited to 'main.c')
-rw-r--r--main.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/main.c b/main.c
index b71a824..af5128b 100644
--- a/main.c
+++ b/main.c
@@ -471,15 +471,19 @@ handle_newl(void) {
if(dzen.slave_win.max_lines && (dzen.slave_win.tcnt > last_cnt)) {
if (XGetWindowAttributes(dzen.dpy, dzen.slave_win.win, &wa),
wa.map_state != IsUnmapped
- /* autoscroll only if we're currently viewing the last line of input */
+ /* autoscroll and redraw only if we're
+ * currently viewing the last line of input
+ */
&& (dzen.slave_win.last_line_vis == last_cnt)) {
dzen.slave_win.first_line_vis = 0;
dzen.slave_win.last_line_vis = 0;
- } else if(wa.map_state == IsUnmapped || !dzen.slave_win.last_line_vis) {
+ x_draw_body();
+ }
+ /* forget state if window was unmapped */
+ 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;
}
- do_action(exposeslave);
last_cnt = dzen.slave_win.tcnt;
}
}