diff --git a/src/model_menus.cpp b/src/model_menus.cpp index 296e910c0..676ad352c 100644 --- a/src/model_menus.cpp +++ b/src/model_menus.cpp @@ -188,15 +188,6 @@ void menuProcModelSelect(uint8_t event) #define refresh event #endif -#if !defined(PCBARM) - if (event) { - eeFlush(); // flush eeprom write -#if defined(PCBV4) - refresh = true; -#endif - } -#endif - if (s_confirmation) { eeDeleteModel(m_posVert); // delete file s_confirmation = 0; @@ -225,6 +216,19 @@ void menuProcModelSelect(uint8_t event) #endif if (s_editMode > 0) s_editMode = 0; +#if !defined(PCBARM) + if (event +#if defined(ROTARY_ENCODERS) + || oldSub != m_posVert +#endif + ) { + eeFlush(); // flush eeprom write +#if defined(SDCARD) + refresh = true; +#endif + } +#endif + int8_t sub = m_posVert; #if defined(ROTARY_ENCODERS) @@ -1635,6 +1639,9 @@ void menuProcExpoMix(uint8_t expo, uint8_t _event_) uint8_t sub = m_posVert; #endif + if (s_editMode > 0) + s_editMode = 0; + switch(_event) { case EVT_ENTRY: