summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2000-06-02 00:19:11 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2000-06-02 00:19:11 +0000
commitf3e4224748351e0f69e06bdb045f442c0736f156 (patch)
treeccaab47dce74c480aeef33047a2649c8f65c3919 /src
parent6519b1ba58c0da8e30f232744af6ef84ffefa3ae (diff)
downloadirssi-f3e4224748351e0f69e06bdb045f442c0736f156.zip
--more-- in statusbar should now work right.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@270 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src')
-rw-r--r--src/fe-text/statusbar-items.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/fe-text/statusbar-items.c b/src/fe-text/statusbar-items.c
index a19232d2..fde8bff0 100644
--- a/src/fe-text/statusbar-items.c
+++ b/src/fe-text/statusbar-items.c
@@ -462,11 +462,11 @@ static void sig_statusbar_activity_window_destroyed(WINDOW_REC *window)
/* redraw -- more -- */
static void statusbar_more(SBAR_ITEM_REC *item, int ypos)
{
- if (item->size != 10) return;
+ if (item->size != 10) return;
- move(ypos, item->xpos);
- set_color((1 << 4)+15); addstr("-- more --");
- screen_refresh();
+ move(ypos, item->xpos);
+ set_color((1 << 4)+15); addstr("-- more --");
+ screen_refresh();
}
static void sig_statusbar_more_check_remove(WINDOW_REC *window)
@@ -490,8 +490,10 @@ static void sig_statusbar_more_check(WINDOW_REC *window)
return;
if (!WINDOW_GUI(window)->bottom) {
- if (more_item == NULL)
+ if (more_item == NULL) {
more_item = statusbar_item_create(mainbar, 10, FALSE, statusbar_more);
+ statusbar_redraw(mainbar);
+ }
} else if (more_item != NULL) {
statusbar_item_remove(more_item);
more_item = NULL;
@@ -769,6 +771,7 @@ void statusbar_items_init(void)
more_item = NULL;
signal_add("gui page scrolled", (SIGNAL_FUNC) sig_statusbar_more_check_remove);
signal_add("window item changed", (SIGNAL_FUNC) sig_statusbar_more_check);
+ signal_add("window changed", (SIGNAL_FUNC) sig_statusbar_more_check);
signal_add("gui print text", (SIGNAL_FUNC) sig_statusbar_more_check);
/* lag */
@@ -826,6 +829,7 @@ void statusbar_items_deinit(void)
/* more */
signal_remove("gui page scrolled", (SIGNAL_FUNC) sig_statusbar_more_check_remove);
signal_remove("window item changed", (SIGNAL_FUNC) sig_statusbar_more_check);
+ signal_remove("window changed", (SIGNAL_FUNC) sig_statusbar_more_check);
signal_remove("gui print text", (SIGNAL_FUNC) sig_statusbar_more_check);
/* lag */