diff options
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -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; } } |