From dce753c5934a36216dbc0e39607e70c2e0c44788 Mon Sep 17 00:00:00 2001 From: Myk Taylor Date: Mon, 20 Nov 2023 09:43:43 -0800 Subject: [PATCH] don't allow keyboard keys to bleed through when multiple keys are hit at once --- plugins/lua/sort/sortoverlay.lua | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/plugins/lua/sort/sortoverlay.lua b/plugins/lua/sort/sortoverlay.lua index 82d7d8fca..c234bd83d 100644 --- a/plugins/lua/sort/sortoverlay.lua +++ b/plugins/lua/sort/sortoverlay.lua @@ -89,12 +89,23 @@ function SortOverlay:onRenderBody(dc) SortOverlay.super.onRenderBody(self, dc) end +local function is_mouse_key(keys) + return keys._MOUSE_L + or keys._MOUSE_R + or keys._MOUSE_M + or keys.CONTEXT_SCROLL_UP + or keys.CONTEXT_SCROLL_DOWN + or keys.CONTEXT_SCROLL_PAGEUP + or keys.CONTEXT_SCROLL_PAGEDOWN +end + function SortOverlay:onInput(keys) if keys._MOUSE_R and self.subviews.search.focus and self:get_key() then self.subviews.search:setFocus(false) return true end - return SortOverlay.super.onInput(self, keys) + return SortOverlay.super.onInput(self, keys) or + (self.subviews.search.focus and not is_mouse_key(keys)) end function SortOverlay:do_search(text, force_full_search)