|
@@ -2201,14 +2201,21 @@ void mFilamentItem(uint16_t nTemp, uint16_t nTempBed)
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- if (!bFilamentWaitingFlag)
|
|
|
+ if (!bFilamentWaitingFlag || lcd_draw_update)
|
|
|
{
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ bool once = !bFilamentWaitingFlag;
|
|
|
bFilamentWaitingFlag = true;
|
|
|
|
|
|
- lcd_clear();
|
|
|
+
|
|
|
lcd_draw_update = 1;
|
|
|
+
|
|
|
+ lcd_clear();
|
|
|
lcd_puts_at_P(0, 3, _T(MSG_CANCEL));
|
|
|
|
|
|
lcd_set_cursor(0, 1);
|
|
@@ -2218,12 +2225,12 @@ void mFilamentItem(uint16_t nTemp, uint16_t nTempBed)
|
|
|
case FilamentAction::AutoLoad:
|
|
|
case FilamentAction::MmuLoad:
|
|
|
lcd_puts_P(_i("Preheating to load"));
|
|
|
- raise_z_above(MIN_Z_FOR_LOAD);
|
|
|
+ if (once) raise_z_above(MIN_Z_FOR_LOAD);
|
|
|
break;
|
|
|
case FilamentAction::UnLoad:
|
|
|
case FilamentAction::MmuUnLoad:
|
|
|
lcd_puts_P(_i("Preheating to unload"));
|
|
|
- raise_z_above(MIN_Z_FOR_UNLOAD);
|
|
|
+ if (once) raise_z_above(MIN_Z_FOR_UNLOAD);
|
|
|
break;
|
|
|
case FilamentAction::MmuEject:
|
|
|
lcd_puts_P(_i("Preheating to eject"));
|