diff options
author | nicm <nicm> | 2021-10-11 13:27:50 +0000 |
---|---|---|
committer | nicm <nicm> | 2021-10-11 13:27:50 +0000 |
commit | b8581ec80e5339be5e2c08cfec70a77f21ba06b2 (patch) | |
tree | aa0d8f6d2e94066431aefca55f1f8b758a8e108e /menu.c | |
parent | 759efe1b3327a7244c03ecc7b90e0e3c49712d06 (diff) | |
download | rtmux-b8581ec80e5339be5e2c08cfec70a77f21ba06b2.tar.gz rtmux-b8581ec80e5339be5e2c08cfec70a77f21ba06b2.tar.bz2 rtmux-b8581ec80e5339be5e2c08cfec70a77f21ba06b2.zip |
Make positions hidden by overlays range-based rather than character-based,
from Anindya Mukherjee.
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 13 |
1 files changed, 6 insertions, 7 deletions
@@ -140,17 +140,16 @@ menu_mode_cb(__unused struct client *c, void *data, __unused u_int *cx, return (&md->s); } -int -menu_check_cb(__unused struct client *c, void *data, u_int px, u_int py) +/* Return parts of the input range which are not obstructed by the menu. */ +void +menu_check_cb(__unused struct client *c, void *data, u_int px, u_int py, + u_int nx, struct overlay_ranges *r) { struct menu_data *md = data; struct menu *menu = md->menu; - if (px < md->px || px > md->px + menu->width + 3) - return (1); - if (py < md->py || py > md->py + menu->count + 1) - return (1); - return (0); + server_client_overlay_range(md->px, md->py, menu->width + 4, + menu->count + 2, px, py, nx, r); } void |