mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-08-06 12:16:11 +00:00
fix: replace long-press lock trigger with back_btn.isPressed() check
Long press detection on back_btn was unreliable — the release generated a spurious CLICK that cancelled the sequence. Now the Enter click handler checks back_btn.isPressed() directly: holding Back and clicking Enter 3× within 3 seconds locks/unlocks the screen. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
ef0241b5f3
commit
43f3621fdc
@@ -35,9 +35,8 @@ class UITask : public AbstractUITask {
|
||||
NodePrefs* _node_prefs;
|
||||
bool _locked;
|
||||
unsigned long _lock_wake_until; // when to blank screen again after locked wake (5s)
|
||||
int _lock_seq; // 0=idle, 1=active (long-Back pressed, awaiting Enters)
|
||||
int _lock_seq_count; // Enter presses so far in current sequence
|
||||
unsigned long _lock_seq_ms; // millis() when sequence started
|
||||
int _lock_seq_count; // Enter presses while Back held (lock/unlock sequence)
|
||||
unsigned long _lock_seq_ms; // millis() of last lock-sequence press (for timeout)
|
||||
char _alert[80];
|
||||
char _notif_mel_buf[220]; // persistent RTTTL buffer for custom notification melodies
|
||||
unsigned long _alert_expiry;
|
||||
@@ -93,7 +92,7 @@ public:
|
||||
_msgcount = _room_unread = 0;
|
||||
_locked = false;
|
||||
_lock_wake_until = 0;
|
||||
_lock_seq = 0; _lock_seq_count = 0; _lock_seq_ms = 0;
|
||||
_lock_seq_count = 0; _lock_seq_ms = 0;
|
||||
_last_notif_ch_idx = -1;
|
||||
_last_notif_dm_valid = false;
|
||||
memset(_last_notif_dm_prefix, 0, sizeof(_last_notif_dm_prefix));
|
||||
|
||||
Reference in New Issue
Block a user