From 84e98e8b4bd49cbccee47d6048d1b56c53c1ba26 Mon Sep 17 00:00:00 2001 From: philmoz Date: Mon, 31 Mar 2025 16:14:07 +1100 Subject: [PATCH] fix(color): touch release event incorrectly sent to Lua scripts after key presses (#6032) --- radio/src/lua/lua_widget.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/radio/src/lua/lua_widget.cpp b/radio/src/lua/lua_widget.cpp index 87df75757..e1ee83e81 100644 --- a/radio/src/lua/lua_widget.cpp +++ b/radio/src/lua/lua_widget.cpp @@ -120,12 +120,6 @@ void LuaEventHandler::event_cb(lv_event_t* e) downTime = RTOS_GET_MS(); } } else if (code == LV_EVENT_RELEASED) { - LuaEventData* const es = luaGetEventSlot(); - if (es) { - es->event = EVT_TOUCH_BREAK; - TRACE("EVT_TOUCH_BREAK"); - } - // tap count handling uint32_t now = RTOS_GET_MS(); if (now - downTime <= LUA_TAP_TIME) { @@ -138,6 +132,13 @@ void LuaEventHandler::event_cb(lv_event_t* e) } else { tapCount = 0; } + + LuaEventData* const es = luaGetEventSlot(); + if (es && downTime) { + downTime = 0; + es->event = EVT_TOUCH_BREAK; + TRACE("EVT_TOUCH_BREAK"); + } } #endif }