summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2001-10-15 20:18:34 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2001-10-15 20:18:34 +0000
commit980bd19808f6ecf90f46f5b0d428ec06e0d8a301 (patch)
treeababe0194fc90f89b8e1a2ed59637f59d2efefd3
parent16247b8c3468a578a942b83fd37777b2d23aae1e (diff)
downloadirssi-980bd19808f6ecf90f46f5b0d428ec06e0d8a301.zip
mainwindow_set_statusbar_lines() resized only active window - not all
windows in that main window.. This made screen mess up for example with /RELOAD. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1844 dbcabf3a-b0e7-0310-adc4-f8d773084564
-rw-r--r--src/fe-text/mainwindows.c23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/fe-text/mainwindows.c b/src/fe-text/mainwindows.c
index a07fb824..e1d3f097 100644
--- a/src/fe-text/mainwindows.c
+++ b/src/fe-text/mainwindows.c
@@ -71,17 +71,10 @@ static MAIN_WINDOW_REC *find_window_with_room(void)
return biggest_rec;
}
-static void mainwindow_resize(MAIN_WINDOW_REC *window, int xdiff, int ydiff)
+static void mainwindow_resize_windows(MAIN_WINDOW_REC *window)
{
GSList *tmp;
- if (quitting || (xdiff == 0 && ydiff == 0))
- return;
-
- window->width += xdiff;
- window->height = window->last_line-window->first_line+1;
- mainwindow_set_screen_size(window);
-
for (tmp = windows; tmp != NULL; tmp = tmp->next) {
WINDOW_REC *rec = tmp->data;
@@ -91,6 +84,17 @@ static void mainwindow_resize(MAIN_WINDOW_REC *window, int xdiff, int ydiff)
MAIN_WINDOW_TEXT_HEIGHT(window));
}
}
+}
+
+static void mainwindow_resize(MAIN_WINDOW_REC *window, int xdiff, int ydiff)
+{
+ if (quitting || (xdiff == 0 && ydiff == 0))
+ return;
+
+ window->width += xdiff;
+ window->height = window->last_line-window->first_line+1;
+ mainwindow_set_screen_size(window);
+ mainwindow_resize_windows(window);
textbuffer_view_set_window(WINDOW_GUI(window->active)->view,
window->screen_win);
@@ -532,8 +536,7 @@ int mainwindow_set_statusbar_lines(MAIN_WINDOW_REC *window,
if (top+bottom != 0) {
mainwindow_set_screen_size(window);
- gui_window_resize(window->active, window->width,
- MAIN_WINDOW_TEXT_HEIGHT(window));
+ mainwindow_resize_windows(window);
}
return ret;