From 0f5cf25e73fb2e789b472317966ff80323dddd75 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Fri, 25 Aug 2023 16:59:39 +1000 Subject: More performance and usability tweaks - pin ui and decoder to opposite cores - disable touch wheel when controls are locked --- src/drivers/relative_wheel.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src/drivers/relative_wheel.cpp') diff --git a/src/drivers/relative_wheel.cpp b/src/drivers/relative_wheel.cpp index 846d0e7b..75b62ae7 100644 --- a/src/drivers/relative_wheel.cpp +++ b/src/drivers/relative_wheel.cpp @@ -15,6 +15,7 @@ namespace drivers { RelativeWheel::RelativeWheel(TouchWheel* touch) : touch_(touch), + is_enabled_(true), is_clicking_(false), was_clicking_(false), is_first_read_(true), @@ -60,17 +61,24 @@ auto RelativeWheel::Update() -> void { } } +auto RelativeWheel::SetEnabled(bool en) -> void { + is_enabled_ = en; +} + auto RelativeWheel::is_clicking() -> bool { + if (!is_enabled_) { + return false; + } bool ret = is_clicking_; is_clicking_ = 0; return ret; } auto RelativeWheel::ticks() -> std::int_fast16_t { - int_fast16_t t = ticks_; - if (t != 0) { - ESP_LOGI("teeks", "ticks %d", t); + if (!is_enabled_) { + return 0; } + int_fast16_t t = ticks_; ticks_ = 0; return t; } -- cgit v1.2.3