Skip to content

3.1.0

Latest

Choose a tag to compare

@loic-daigle loic-daigle released this 15 Jun 21:16
· 2 commits to main since this release
760dbf3

๐Ÿ†• New Features:

  • Introduced a professional PopupManager system with 5 popup types: Info, Success, Warning, Error, and Question popups.
  • Added auto-close functionality for success messages.
  • Enabled custom popup configuration, including colors and icons.
  • Developed non-blocking popup operations using the update() method.
  • Implemented proper button debouncing and input validation.
  • Added automatic word wrapping for long messages.
  • Delivered a professional visual design featuring shadows and rounded corners.
  • Enabled encoder support for popup navigation (rotate to select, press to confirm).
  • Added visual button selection indicators for encoder navigation.
  • Fully implemented range and option features for settings.

๐Ÿ”ง Improvements:

  • Optimized scrollTextHorizontal functions using sprite caching.
  • Enhanced calculateMaxCharacters with a binary search algorithm.
  • Refined drawCanvasOnTFT with frame comparison optimizations.
  • Updated MenuScreen and SettingsScreen constructors to make titles optional.
  • Allowed CustomScreen constructor to define an optional title.
  • Introduced an overloaded addItem method that automatically uses the title from the nextScreen parameter.
  • Added a navigateBack() function to return to the previous screen.
  • Improved settings to check for duplicate names and types when adding new ones.
  • Enabled animations to be toggled with a new function.
  • Updated the settings system to use vectors for more efficient handling.
  • Changed default button pins to -1.
  • Enhanced the settings screen for non-boolean values and added unit support for ranges.
  • Added functions to set pins outside constructors.
  • Added smooth animations and sub-screen support in settings.

๐Ÿ› Bug Fixes:

  • Resolved a canvas sprite creation bug where width and height used the same value.
  • Corrected a self-assignment error in rect_height.
  • Validated encoder pins to prevent crashes from invalid setups.
  • Added null pointer checks to avoid crashes from invalid screen pointers.
  • Fixed toggle switch flickering bugs and improved centering.
  • Fixed EEPROM saving for global setting objects.
  • Corrected the TFT_BL pin definition error.
  • Fixed issues with toggle switches not aligning correctly.
  • Fixed crashes caused by invalid option indexes for settings.
  • Resolved margin and text alignment issues in the settings screen.
  • Refined selection rectangle drawing and removed unneeded variables.

๐Ÿž Remaining Bugs:

  • None known at this time!

Full Changelog: Compare v3.0.0...v3.1.0