Procházet zdrojové kódy

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
Guðni Már Gilbert před 2 roky
rodič
revize
7fe22e8f79
1 změnil soubory, kde provedl 4 přidání a 1 odebrání
  1. 4 1
      Firmware/ultralcd.cpp

+ 4 - 1
Firmware/ultralcd.cpp

@@ -7582,7 +7582,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