summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2002-05-12 14:48:11 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2002-05-12 14:48:11 +0000
commit3ac451c608d247c0ef0063c1e00eb6aea8a9bb19 (patch)
tree6a2ec9c0268e0f7a20fb722cbe230a8bd4f4ac62
parent22e9fa49dcdc5d831fc2fe1852ccd52668166471 (diff)
downloadirssi-3ac451c608d247c0ef0063c1e00eb6aea8a9bb19.zip
some optimizations to not uselessly hide/show/move cursor - hope i didn't
break anything :) git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2781 dbcabf3a-b0e7-0310-adc4-f8d773084564
-rw-r--r--src/fe-text/term-terminfo.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/fe-text/term-terminfo.c b/src/fe-text/term-terminfo.c
index c61c51ef..311b2499 100644
--- a/src/fe-text/term-terminfo.c
+++ b/src/fe-text/term-terminfo.c
@@ -372,13 +372,16 @@ static void term_printed_text(int count)
However, next term_move() really shouldn't try to cache
the move, otherwise terminals would try to combine the
last word in upper line with first word in lower line. */
- cforcemove = TRUE;
vcx += count;
while (vcx >= term_width) {
vcx -= term_width;
if (vcy < term_height-1) vcy++;
if (vcx > 0) term_lines_empty[vcy] = FALSE;
}
+
+ crealx += count;
+ if (crealx >= term_width)
+ cforcemove = TRUE;
}
void term_addch(TERM_WINDOW *window, int chr)
@@ -488,6 +491,7 @@ void term_refresh(TERM_WINDOW *window)
terminfo_set_cursor_visible(TRUE);
curs_visible = TRUE;
}
+
term_set_color(window, ATTR_RESET);
fflush(window != NULL ? window->term->out : current_term->out);
}
@@ -495,11 +499,6 @@ void term_refresh(TERM_WINDOW *window)
void term_refresh_freeze(void)
{
freeze_counter++;
-
- if (!term_detached && curs_visible) {
- terminfo_set_cursor_visible(FALSE);
- curs_visible = FALSE;
- }
}
void term_refresh_thaw(void)