Merge pull request #5088 from thinkyhead/rc_break_m1_fix
Handle M108 in M1 also with ULTIPANEL
This commit is contained in:
		| @@ -4431,41 +4431,49 @@ inline void gcode_G92() { | ||||
|  | ||||
|     #endif | ||||
|  | ||||
|     #if ENABLED(EMERGENCY_PARSER) | ||||
|       wait_for_user = true; | ||||
|     #endif | ||||
|  | ||||
|     KEEPALIVE_STATE(PAUSED_FOR_USER); | ||||
|  | ||||
|     stepper.synchronize(); | ||||
|     refresh_cmd_timeout(); | ||||
|  | ||||
|     #if ENABLED(ULTIPANEL) | ||||
|  | ||||
|       #if ENABLED(EMERGENCY_PARSER) | ||||
|         #define M1_WAIT_CONDITION (!lcd_clicked() && wait_for_user) | ||||
|       #else | ||||
|         #define M1_WAIT_CONDITION !lcd_clicked() | ||||
|       #endif | ||||
|  | ||||
|       if (codenum > 0) { | ||||
|         codenum += previous_cmd_ms;  // wait until this time for a click | ||||
|         KEEPALIVE_STATE(PAUSED_FOR_USER); | ||||
|         while (PENDING(millis(), codenum) && !lcd_clicked()) idle(); | ||||
|         while (PENDING(millis(), codenum) && M1_WAIT_CONDITION) idle(); | ||||
|         lcd_ignore_click(false); | ||||
|       } | ||||
|       else if (lcd_detected()) { | ||||
|         KEEPALIVE_STATE(PAUSED_FOR_USER); | ||||
|         while (!lcd_clicked()) idle(); | ||||
|         while (M1_WAIT_CONDITION) idle(); | ||||
|       } | ||||
|       else return; | ||||
|       else goto ExitM1; | ||||
|  | ||||
|       if (IS_SD_PRINTING) | ||||
|         LCD_MESSAGEPGM(MSG_RESUMING); | ||||
|       else | ||||
|         LCD_MESSAGEPGM(WELCOME_MSG); | ||||
|       IS_SD_PRINTING ? LCD_MESSAGEPGM(MSG_RESUMING) : LCD_MESSAGEPGM(WELCOME_MSG); | ||||
|  | ||||
|     #else | ||||
|  | ||||
|       KEEPALIVE_STATE(PAUSED_FOR_USER); | ||||
|       wait_for_user = true; | ||||
|  | ||||
|       if (codenum > 0) { | ||||
|         codenum += previous_cmd_ms;  // wait until this time for an M108 | ||||
|         while (PENDING(millis(), codenum) && wait_for_user) idle(); | ||||
|       } | ||||
|       else while (wait_for_user) idle(); | ||||
|  | ||||
|       wait_for_user = false; | ||||
|     #endif | ||||
|  | ||||
| ExitM1: | ||||
|  | ||||
|     #if ENABLED(EMERGENCY_PARSER) | ||||
|       wait_for_user = false; | ||||
|     #endif | ||||
|  | ||||
|     KEEPALIVE_STATE(IN_HANDLER); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user