From e6995196f22c24fc76ffe1d83d987ae5fd270619 Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 16 Sep 2019 13:27:14 +0000 Subject: [PATCH] Change menu key bindings to Up and Down and also close it on any mouse press if opened by key. --- key-bindings.c | 4 ++-- menu.c | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/key-bindings.c b/key-bindings.c index 0c9ba67b..afb07ce6 100644 --- a/key-bindings.c +++ b/key-bindings.c @@ -329,10 +329,10 @@ key_bindings_init(void) "bind -n MouseDown3StatusRight display-menu -t= -xM -yS -T \"#[align=centre]#{client_name}\" " DEFAULT_CLIENT_MENU, "bind -n MouseDown3StatusLeft display-menu -t= -xM -yS -T \"#[align=centre]#{session_name}\" " DEFAULT_SESSION_MENU, "bind -n MouseDown3Status display-menu -t= -xW -yS -T \"#[align=centre]#{window_index}:#{window_name}\" " DEFAULT_WINDOW_MENU, - "bind C-m display-menu -xW -yS -T \"#[align=centre]#{window_index}:#{window_name}\" " DEFAULT_WINDOW_MENU, + "bind Up display-menu -xW -yS -T \"#[align=centre]#{window_index}:#{window_name}\" " DEFAULT_WINDOW_MENU, "bind -n MouseDown3Pane if -Ft= '#{||:#{mouse_any_flag},#{pane_in_mode}}' 'select-pane -t=; send-keys -M' {display-menu -t= -xM -yM -T \"#[align=centre]#{pane_index} (#{pane_id})\" " DEFAULT_PANE_MENU "}", "bind -n M-MouseDown3Pane display-menu -t= -xM -yM -T \"#[align=centre]#{pane_index} (#{pane_id})\" " DEFAULT_PANE_MENU, - "bind M-m display-menu -xP -yP -T \"#[align=centre]#{pane_index} (#{pane_id})\" " DEFAULT_PANE_MENU, + "bind Down display-menu -xP -yP -T \"#[align=centre]#{pane_index} (#{pane_id})\" " DEFAULT_PANE_MENU, "bind -Tcopy-mode C-Space send -X begin-selection", "bind -Tcopy-mode C-a send -X start-of-line", diff --git a/menu.c b/menu.c index da8d89c4..6024ba02 100644 --- a/menu.c +++ b/menu.c @@ -185,8 +185,11 @@ menu_key_cb(struct client *c, struct key_event *event) const char *name; if (KEYC_IS_MOUSE(event->key)) { - if (md->flags & MENU_NOMOUSE) + if (md->flags & MENU_NOMOUSE) { + if (MOUSE_BUTTONS(m->b) != 0) + return (1); return (0); + } if (m->x < md->px || m->x > md->px + 4 + menu->width || m->y < md->py + 1 ||