Replaces the dialog pop-up for theme selection (Light, Dark, System)
with `SegmentedButton` widgets in the theme settings page.
The new UI uses:
- Light theme option on the left.
- System theme option in the middle.
- Dark theme option on the right.
- A checkmark icon (`Icons.check`) for the selected theme.
- Respective icons (`Icons.light_mode`, `Icons.auto_awesome`, `Icons.dark_mode`)
for unselected themes.
The `ModeSelectionDialog` has been removed as it's no longer necessary.
Note: Full UI and persistence testing could not be completed due to
sandbox limitations where the Flutter SDK was not available.
The core code implementation was verified.
* feat: add fadeSlideTransitionBuilder for smoother transitions in user login
* fix: reuse onboarding components on server manager page
* fix: gaining focus rebuilt the widget
using memoized fixes this issue
* feat: add AbsIcons font and update pubspec.yaml for font integration
* feat: implement library selection in YouPage
* fix: optimize authenticatedApi provider to not rebuild unnecessarily
* feat: add LibrarySwitchChip widget and integrate it into YouPage and ScaffoldWithNavBar
* feat: enhance library selection UI with refresh functionality and error handling
* fix: change library switcher activation from long press to double tap
* feat: show current library on nav bar
* feat: refactor LibraryBrowserPage to use CustomScrollView and enhance app bar with dynamic library icon and title
* Refactor CI workflow and add Linux packaging support; update app title to "Vaani"
* Refactor CI workflow to separate setup, testing, and building steps; add Linux AppImage packaging support
* use reusable workflow
* Make Flutter version input optional in setup-env action and rename step in workflow
* Replace setup-env action with reusable flutter-setup workflow; streamline CI configuration and enhance dependency management
* Add Flutter setup composite action for streamlined environment configuration
* Move repository checkout step to the main workflow for better control and clarity in the CI process
* Remove unnecessary shell specification for Flutter dependency setup to simplify action configuration
* Add shell specification for Flutter dependency command to enhance cross-platform compatibility
* Comment out static analysis step in Flutter test workflow to streamline CI process
* Add repository checkout and Flutter environment setup steps to CI workflow
* Add installation of Linux dependencies for Flutter test workflow
* Remove obsolete Flutter setup and release workflows to streamline CI configuration
* Fix formatting in make_config.yaml by ensuring newline at end of file
* refactor: consolidate theme definitions by removing separate dark and light theme files
* feat: integrate dynamic color support and enhance theme settings management
* feat: add theme settings route and update theme management in app settings
* feat: enhance theme management by integrating high contrast support in various components
* feat: implement mode selection dialog for theme settings and enhance button functionality
* refactor: update theme import paths and consolidate theme provider files
* feat: enhance theme management by integrating theme selection based on audiobook playback
* refactor: update default value for useMaterialThemeFromSystem to false in theme settings
* refactor: adjust high contrast condition order in theme settings for consistency
* refactor: rename useMaterialThemeOfPlayingItem to useCurrentPlayerThemeThroughoutApp for clarity
* refactor: correct spelling in system theme provider and replace with updated implementation
* refactor: extract restore backup dialog into a separate widget for improved readability
* refactor: reorganize settings sections for clarity and improve restore dialog functionality
* feat: add ability to get logs file from ui
* test: add unit test for log line parsing in logs_provider
* refactor: update all logs to obfuscate sensitive information
* feat: generate dynamic zip file name for logs export
* feat: enhance logging in audiobook player and provider for better debugging
* refactor: extract user display logic into UserBar widget for offline access of settings and logs
* feat: add About section with app metadata and source code link in YouPage