Browse Source

Fix SD finished ExtUI / host action (#17285)

vanilla_fb_2.0.x
InsanityAutomation 5 years ago
committed by GitHub
parent
commit
3655e240f5
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      Marlin/src/MarlinCore.cpp
  2. 22
      Marlin/src/gcode/lcd/M0_M1.cpp
  3. 2
      Marlin/src/inc/Conditionals_adv.h

5
Marlin/src/MarlinCore.cpp

@ -423,7 +423,8 @@ void startOrResumeJob() {
switch (card.sdprinting_done_state) {
case 1:
did_state = print_job_timer.duration() < 60 || queue.enqueue_one_P(PSTR("M31"));
if (print_job_timer.duration() > 60)
did_state = queue.enqueue_one_P(PSTR("M31"));
break;
case 2:
@ -437,7 +438,7 @@ void startOrResumeJob() {
break;
case 4: // Display "Click to Continue..."
#if HAS_RESUME_CONTINUE // 30 min timeout with LCD, 1 min without
#if HAS_LEDS_OFF_FLAG // 30 min timeout with LCD, 1 min without
did_state = queue.enqueue_one_P(
print_job_timer.duration() < 60 ? PSTR("M0Q1P1") : PSTR("M0Q1S" TERN(HAS_LCD_MENU, "1800", "60"))
);

22
Marlin/src/gcode/lcd/M0_M1.cpp

@ -56,11 +56,11 @@ void GcodeSuite::M0_M1() {
planner.synchronize();
#if HAS_LCD_MENU || HAS_LEDS_OFF_FLAG
#if HAS_LEDS_OFF_FLAG
const bool seenQ = parser.seen('Q');
#if HAS_LEDS_OFF_FLAG
if (seenQ) printerEventLEDs.onPrintCompleted(); // Change LED color for Print Completed
#endif
if (seenQ) printerEventLEDs.onPrintCompleted(); // Change LED color for Print Completed
#else
constexpr bool seenQ = false;
#endif
#if HAS_LCD_MENU
@ -75,12 +75,12 @@ void GcodeSuite::M0_M1() {
}
#elif ENABLED(EXTENSIBLE_UI)
if (parser.string_arg)
ExtUI::onUserConfirmRequired(parser.string_arg); // Can this take an SRAM string??
else
ExtUI::onUserConfirmRequired_P(GET_TEXT(MSG_USERWAIT));
if (!seenQ) {
if (parser.string_arg)
ExtUI::onUserConfirmRequired(parser.string_arg); // Can this take an SRAM string??
else
ExtUI::onUserConfirmRequired_P(GET_TEXT(MSG_USERWAIT));
}
#else
if (parser.string_arg) {
@ -94,7 +94,7 @@ void GcodeSuite::M0_M1() {
wait_for_user = true;
#if ENABLED(HOST_PROMPT_SUPPORT)
host_prompt_do(PROMPT_USER_CONTINUE, parser.codenum ? PSTR("M1 Stop") : PSTR("M0 Stop"), CONTINUE_STR);
if (!seenQ) host_prompt_do(PROMPT_USER_CONTINUE, parser.codenum ? PSTR("M1 Stop") : PSTR("M0 Stop"), CONTINUE_STR);
#endif
if (ms > 0) ms += millis(); // wait until this time for a click

2
Marlin/src/inc/Conditionals_adv.h

@ -93,7 +93,7 @@
#if EITHER(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS)
#define HAS_SOFTWARE_ENDSTOPS 1
#endif
#if ANY(EXTENSIBLE_UI, NEWPANEL, EMERGENCY_PARSER)
#if ANY(EXTENSIBLE_UI, NEWPANEL, EMERGENCY_PARSER, HAS_ADC_BUTTONS)
#define HAS_RESUME_CONTINUE 1
#endif

Loading…
Cancel
Save