From d82be078076c040a513fa9fd495e3c36a3fd4828 Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch Date: Thu, 25 Aug 2022 00:25:03 +0200 Subject: X11: handle Shift+clicks in the list --- nncmpp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nncmpp.c b/nncmpp.c index 2e7aeb2..c9f3acb 100644 --- a/nncmpp.c +++ b/nncmpp.c @@ -2770,6 +2770,13 @@ app_process_left_mouse_click (struct widget *w, int x, int y, int modifiers) || row_index >= (int) tab->item_count - tab->item_top) return false; + if (!(modifiers & TERMO_KEYMOD_SHIFT)) + tab->item_mark = -1; + else if (!tab->can_multiselect || tab->item_selected < 0) + return false; + else if (tab->item_mark < 0) + tab->item_mark = tab->item_selected; + // TODO: Probably will need to fix up item->top // for partially visible items in X11. tab->item_selected = row_index + tab->item_top; -- cgit v1.2.3-70-g09d2