From e9b7763af68486ce42cd3195b570f1c67628bd56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gu=C3=B0ni=20M=C3=A1r=20Gilbert?= Date: Sun, 6 Nov 2022 13:35:47 +0000 Subject: [PATCH] Fix long-press LCD inactivity timeout Fixes #3715 When a long-press is triggered, the LCD inactivity timer needs to be restarted. This is done with lcd_timeoutToStatus.start() This also fixes situations where a long-press is triggered, and the timer times out immediately (because it was not reset properly) Change in memory: Flash: +8 bytes SRAM: 0 bytes --- Firmware/ultralcd.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 72a3db6d1..ae044d998 100755 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -7638,7 +7638,10 @@ uint8_t get_message_level() void menu_lcd_longpress_func(void) { - backlight_wake(); + // Wake up the LCD backlight and, + // start LCD inactivity timer + lcd_timeoutToStatus.start(); + backlight_wake(); if (homing_flag || mesh_bed_leveling_flag || menu_menu == lcd_babystep_z || menu_menu == lcd_move_z || menu_block_mask != MENU_BLOCK_NONE) { // disable longpress during re-entry, while homing, calibration or if a serious error