From 3f64ecfd287e04c955f788e8d4f5f1b177517897 Mon Sep 17 00:00:00 2001 From: SomeGuy <97603719+Commodore64user@users.noreply.github.com> Date: Tue, 21 May 2024 22:48:54 +0100 Subject: [PATCH] Global long press on K4, 'ScreenKB' + 'Press' (#11872) discussed #11834 --- frontend/ui/widget/menu.lua | 4 +++- frontend/ui/widget/touchmenu.lua | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/frontend/ui/widget/menu.lua b/frontend/ui/widget/menu.lua index 1e0688986..0e1a62391 100644 --- a/frontend/ui/widget/menu.lua +++ b/frontend/ui/widget/menu.lua @@ -965,7 +965,9 @@ function Menu:init() self.key_events.PrevPage = { { Input.group.PgBack } } end - if Device:hasDPad() then + if Device:hasFiveWay() and not Device:hasKeyboard() then + self.key_events.Hold = { { "ScreenKB", "Press" }, event = "Hold" } + elseif Device:hasDPad() then -- we won't catch presses to "Right", leave that to MenuItem. self.key_events.FocusRight = nil -- shortcut icon is not needed for touch device diff --git a/frontend/ui/widget/touchmenu.lua b/frontend/ui/widget/touchmenu.lua index 2d6d8ddde..434e66ae6 100644 --- a/frontend/ui/widget/touchmenu.lua +++ b/frontend/ui/widget/touchmenu.lua @@ -515,6 +515,9 @@ function TouchMenu:init() if Device:hasFewKeys() then self.key_events.Back = { { "Left" } } end + if Device:hasFiveWay() and not Device:hasKeyboard() then + self.key_events.Hold = { { "ScreenKB", "Press" }, event = "Hold" } + end self.key_events.NextPage = { { Input.group.PgFwd } } self.key_events.PrevPage = { { Input.group.PgBack } }