Procházet zdrojové kódy

Fix LCD issue on stepper timeout (#13630)

- Remove a re-paint of the status screen on stepper timeout, which would cause a garbled LCD with `LIGHTWEIGHT_UI` and could interrupt whatever else the user might be doing in a submenu (such as playing games!)
- Use the helper function to reset stepper timeout.
Marcio Teixeira před 6 roky
rodič
revize
e6ebd30f60
1 změnil soubory, kde provedl 7 přidání a 10 odebrání
  1. 7
    10
      Marlin/src/Marlin.cpp

+ 7
- 10
Marlin/src/Marlin.cpp Zobrazit soubor

@@ -457,7 +457,7 @@ void manage_inactivity(const bool ignore_stepper_queue/*=false*/) {
457 457
   if (stepper_inactive_time) {
458 458
     static bool already_shutdown_steppers; // = false
459 459
     if (planner.has_blocks_queued())
460
-      gcode.previous_move_ms = ms; // reset_stepper_timeout to keep steppers powered
460
+      gcode.reset_stepper_timeout();
461 461
     else if (MOVE_AWAY_TEST && !ignore_stepper_queue && ELAPSED(ms, gcode.previous_move_ms + stepper_inactive_time)) {
462 462
       if (!already_shutdown_steppers) {
463 463
         already_shutdown_steppers = true;  // L6470 SPI will consume 99% of free time without this
@@ -473,14 +473,11 @@ void manage_inactivity(const bool ignore_stepper_queue/*=false*/) {
473 473
         #if ENABLED(DISABLE_INACTIVE_E)
474 474
           disable_e_steppers();
475 475
         #endif
476
-        #if HAS_LCD_MENU
477
-          ui.status_screen();
478
-          #if ENABLED(AUTO_BED_LEVELING_UBL)
479
-            if (ubl.lcd_map_control) {
480
-              ubl.lcd_map_control = false;
481
-              ui.defer_status_screen(false);
482
-            }
483
-          #endif
476
+        #if HAS_LCD_MENU && ENABLED(AUTO_BED_LEVELING_UBL)
477
+          if (ubl.lcd_map_control) {
478
+            ubl.lcd_map_control = false;
479
+            ui.defer_status_screen(false);
480
+          }
484 481
         #endif
485 482
       }
486 483
     }
@@ -617,7 +614,7 @@ void manage_inactivity(const bool ignore_stepper_queue/*=false*/) {
617 614
         }
618 615
       #endif // !SWITCHING_EXTRUDER
619 616
 
620
-      gcode.previous_move_ms = ms; // reset_stepper_timeout to keep steppers powered
617
+      gcode.reset_stepper_timeout();
621 618
     }
622 619
   #endif // EXTRUDER_RUNOUT_PREVENT
623 620
 

Loading…
Zrušit
Uložit