Skip to content

Commit

Permalink
Fix SD finished ExtUI / host action (MarlinFirmware#17285)
Browse files Browse the repository at this point in the history
  • Loading branch information
InsanityAutomation authored and mathom committed Apr 16, 2020
1 parent f4c5a19 commit 79f6e4e
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 14 deletions.
5 changes: 3 additions & 2 deletions Marlin/src/MarlinCore.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand All @@ -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"))
);
Expand Down
22 changes: 11 additions & 11 deletions Marlin/src/gcode/lcd/M0_M1.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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) {
Expand All @@ -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
Expand Down
2 changes: 1 addition & 1 deletion Marlin/src/inc/Conditionals_adv.h
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down

0 comments on commit 79f6e4e

Please sign in to comment.