diff options
Diffstat (limited to 'scripts/kconfig/lxdialog/checklist.c')
-rw-r--r-- | scripts/kconfig/lxdialog/checklist.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/scripts/kconfig/lxdialog/checklist.c b/scripts/kconfig/lxdialog/checklist.c index 39becb72444a..cf697080dddd 100644 --- a/scripts/kconfig/lxdialog/checklist.c +++ b/scripts/kconfig/lxdialog/checklist.c | |||
@@ -125,6 +125,12 @@ int dialog_checklist(const char *title, const char *prompt, int height, | |||
125 | } | 125 | } |
126 | } | 126 | } |
127 | 127 | ||
128 | do_resize: | ||
129 | if (getmaxy(stdscr) < (height + 6)) | ||
130 | return -ERRDISPLAYTOOSMALL; | ||
131 | if (getmaxx(stdscr) < (width + 6)) | ||
132 | return -ERRDISPLAYTOOSMALL; | ||
133 | |||
128 | max_choice = MIN(list_height, item_count()); | 134 | max_choice = MIN(list_height, item_count()); |
129 | 135 | ||
130 | /* center dialog box on screen */ | 136 | /* center dialog box on screen */ |
@@ -303,6 +309,11 @@ int dialog_checklist(const char *title, const char *prompt, int height, | |||
303 | case KEY_ESC: | 309 | case KEY_ESC: |
304 | key = on_key_esc(dialog); | 310 | key = on_key_esc(dialog); |
305 | break; | 311 | break; |
312 | case KEY_RESIZE: | ||
313 | delwin(list); | ||
314 | delwin(dialog); | ||
315 | on_key_resize(); | ||
316 | goto do_resize; | ||
306 | } | 317 | } |
307 | 318 | ||
308 | /* Now, update everything... */ | 319 | /* Now, update everything... */ |