aboutsummaryrefslogtreecommitdiff
path: root/cmd-display-menu.c
diff options
context:
space:
mode:
authornicm <nicm>2020-03-28 09:39:44 +0000
committernicm <nicm>2020-03-28 09:39:44 +0000
commit4346098e977d8fb3bde0783e9858f3def7bc01a5 (patch)
treeb5164226ed816a4a1870a06ea09c6f597d22771f /cmd-display-menu.c
parente0b17e796b52bfad7d867bc876a9826bf5761be4 (diff)
downloadrtmux-4346098e977d8fb3bde0783e9858f3def7bc01a5.tar.gz
rtmux-4346098e977d8fb3bde0783e9858f3def7bc01a5.tar.bz2
rtmux-4346098e977d8fb3bde0783e9858f3def7bc01a5.zip
Fix how popup height is calculated to take embedded newlines into account.
Diffstat (limited to 'cmd-display-menu.c')
-rw-r--r--cmd-display-menu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/cmd-display-menu.c b/cmd-display-menu.c
index aafe2447..e12a24ab 100644
--- a/cmd-display-menu.c
+++ b/cmd-display-menu.c
@@ -237,7 +237,7 @@ cmd_display_popup_exec(struct cmd *self, struct cmdq_item *item)
}
if (nlines != 0)
- h = nlines + 2;
+ h = popup_height(nlines, lines) + 2;
else
h = c->tty.sy / 2;
if (args_has(args, 'h')) {
@@ -262,6 +262,10 @@ cmd_display_popup_exec(struct cmd *self, struct cmdq_item *item)
}
}
+ if (w > c->tty.sx - 1)
+ w = c->tty.sx - 1;
+ if (h > c->tty.sy - 1)
+ h = c->tty.sy - 1;
cmd_display_menu_get_position(c, item, args, &px, &py, w, h);
value = args_get(args, 'd');