diff options
author | Thomas Adam <thomas@xteddy.org> | 2020-03-26 11:11:37 +0000 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2020-03-26 11:11:37 +0000 |
commit | 8a57d14f4bf9edacaa5a7f720d589e650b8f22be (patch) | |
tree | cf8e38d3da3cc84a628f2f985de2eea7cb6bf2f1 /menu.c | |
parent | f652d777a61c1591805a6251160e35674699ced8 (diff) | |
parent | 55b14cdc6aa23870843dd31239e56e8816bf90ff (diff) | |
download | rtmux-8a57d14f4bf9edacaa5a7f720d589e650b8f22be.tar.gz rtmux-8a57d14f4bf9edacaa5a7f720d589e650b8f22be.tar.bz2 rtmux-8a57d14f4bf9edacaa5a7f720d589e650b8f22be.zip |
Merge branch 'obsd-master'
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -130,6 +130,16 @@ menu_free(struct menu *menu) free(menu); } +static int +menu_mode_cb(struct client *c, __unused u_int *cx, __unused u_int *cy) +{ + struct menu_data *md = c->overlay_data; + + if (~md->flags & MENU_NOMOUSE) + return (MODE_MOUSE_ALL); + return (0); +} + static void menu_draw_cb(struct client *c, __unused struct screen_redraw_ctx *ctx0) { @@ -147,9 +157,6 @@ menu_draw_cb(struct client *c, __unused struct screen_redraw_ctx *ctx0) for (i = 0; i < screen_size_y(&md->s); i++) tty_draw_line(tty, NULL, s, 0, i, menu->width + 4, px, py + i); - - if (~md->flags & MENU_NOMOUSE) - tty_update_mode(tty, MODE_MOUSE_ALL, NULL); } static void @@ -317,7 +324,7 @@ menu_display(struct menu *menu, int flags, struct cmdq_item *item, u_int px, md->cb = cb; md->data = data; - server_client_set_overlay(c, 0, menu_draw_cb, menu_key_cb, menu_free_cb, - md); + server_client_set_overlay(c, 0, NULL, menu_mode_cb, menu_draw_cb, + menu_key_cb, menu_free_cb, md); return (0); } |