diff --git a/docs/api.md b/docs/api.md index 9556a83f..2493614d 100644 --- a/docs/api.md +++ b/docs/api.md @@ -459,6 +459,7 @@ You can adjust each property in the JSON object according to your preferences. I | `8` | Blink | | `9` | Reload | | `10` | Fade | +| `11` | Instant | ## Update diff --git a/src/Dictionary.cpp b/src/Dictionary.cpp index e48bce0e..aa90ae62 100644 --- a/src/Dictionary.cpp +++ b/src/Dictionary.cpp @@ -42,7 +42,7 @@ const char HAbriOptions[] PROGMEM = {"Manual;Auto"}; const char HAeffectID[] PROGMEM = {"%s_eff"}; const char HAeffectIcon[] PROGMEM = {"mdi:auto-fix"}; const char HAeffectName[] PROGMEM = {"Transition effect"}; -const char HAeffectOptions[] PROGMEM = {"Random;Slide;Dim;Zoom;Rotate;Pixelate;Curtain;Ripple;Blink;Reload;Fade"}; +const char HAeffectOptions[] PROGMEM = {"Random;Slide;Dim;Zoom;Rotate;Pixelate;Curtain;Ripple;Blink;Reload;Fade;Instant"}; const char HAbtnaID[] PROGMEM = {"%s_btna"}; const char HAbtnaIcon[] PROGMEM = {"mdi:bell-off"}; diff --git a/src/MatrixDisplayUi.cpp b/src/MatrixDisplayUi.cpp index 0c460ae4..972b9535 100644 --- a/src/MatrixDisplayUi.cpp +++ b/src/MatrixDisplayUi.cpp @@ -405,6 +405,10 @@ void MatrixDisplayUi::drawApp() { crossfadeTransition(); } + else if (currentTransition == INSTANT) + { + instantTransition(); + } break; } case FIXED: @@ -932,3 +936,9 @@ void MatrixDisplayUi::crossfadeTransition() } } } + +void MatrixDisplayUi::instantTransition() +{ + this->matrix->clear(); + (this->AppFunctions[this->getnextAppNumber()])(this->matrix, &this->state, 0, 0, &gif2); +} \ No newline at end of file diff --git a/src/MatrixDisplayUi.h b/src/MatrixDisplayUi.h index 579ab502..e324d03b 100644 --- a/src/MatrixDisplayUi.h +++ b/src/MatrixDisplayUi.h @@ -55,7 +55,8 @@ enum TransitionType RIPPLE, BLINK, RELOAD, - CROSSFADE + CROSSFADE, + INSTANT }; enum AppState @@ -132,6 +133,7 @@ class MatrixDisplayUi void blinkTransition(); void reloadTransition(); void crossfadeTransition(); + void instantTransition(); public: MatrixDisplayUi(FastLED_NeoMatrix *matrix);