Let the page buttons keep up with the finger: Next, Next, Next reaches page 4 (0.2.72)
The Previous and Next bars ran their tap through the tile guard, whose 600 ms same-tile window (so one contact never fires a tile twice) dropped the second and third tap of a quick Next, Next, Next. They now use accept_repeat, the -/+ keys' rule since 0.2.25: every clean tap counts, only a contact within 150 ms of the last accepted tap on the same button is a bounce. The page fill already dropped a fill under way when the next page was asked for. Firmware 0.2.61; test_cyd_ui.cpp covers the page buttons; host harness and check builds in docs/TEST_RESULTS_0272.md. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
# Source profile for packages/guition.yaml (tools/generate_packages.py); see docs/GUITION.md.
|
||||
# A screen gets its tiles from the ESP Screen Manager add-on while it runs. The CYD is its own profile.
|
||||
substitutions:
|
||||
SCREEN_FIRMWARE_VERSION: "0.2.60"
|
||||
SCREEN_FIRMWARE_VERSION: "0.2.61"
|
||||
# 0: no drift limit; LVGL decides, releasing inside the tile is a tap, leaving it is not
|
||||
# (like iOS). The CYD keeps a limit because its resistive panel jumps.
|
||||
TOUCH_MOVE_LIMIT_PX: "0"
|
||||
@@ -2438,7 +2438,7 @@ lvgl:
|
||||
on_short_click:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return cyd::touch_guard.accept(millis(), 11);'
|
||||
lambda: 'return cyd::touch_guard.accept_repeat(millis(), 11);'
|
||||
then:
|
||||
- lambda: 'id(tile_page) = std::max(0, id(tile_page) - 1);'
|
||||
- script.execute: show_tile_page
|
||||
@@ -2479,7 +2479,7 @@ lvgl:
|
||||
on_short_click:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return cyd::touch_guard.accept(millis(), 12);'
|
||||
lambda: 'return cyd::touch_guard.accept_repeat(millis(), 12);'
|
||||
then:
|
||||
- lambda: 'id(tile_page) += 1;'
|
||||
- script.execute: show_tile_page
|
||||
|
||||
Reference in New Issue
Block a user