Releases: FriesI23/mhabit
Releases · FriesI23/mhabit
pre-v1.22.0+122
Released: v1.22.0+122-pre
✨ New Features
- Feature: Add Today Mode
- Add “Today Mode” — a clean, minimal UI for habit tracking
- Support bottom navigation bar to switch between views (today / habits)
- Habit Today supports both card and grid layouts
- Persist selected tab across app launches
🌐 Localization
- Update Hebrew translation, thanks to sudo-py-dev's contribution on Weblate
🧹 Others
- Fixed: Use MediaQuery.sizeOf(context) for responsive layout sizing
- Fixed: Apply UI logic cleanup and fixes from code review feedback
Full Changelog: v1.21.1+120...pre-v1.22.0+122
v1.21.1+120
Released: v1.21.1+120
🌐 Localization
- Update Spanish translation, thanks to Angel's contribution on Weblate
🧹 Others
- Update README
Full Changelog: v1.21.0+118...v1.21.1+120
pre-v1.21.1+119
Released: v1.21.1+119-pre
🌐 Localization
- Update Spanish translation, thanks to Angel's contribution on Weblate
🧹 Others
- Update README
Full Changelog: v1.21.0+118...pre-v1.21.1+119
v1.21.0+118
Released: v1.21.0+118
✨ New Features
- Improve
habit_displayfocus, scrolling, and keyboard action (#409) - Add global
UnfocusOnTapwrapper (#410)
🌐 Localization
- Update Arabic translation, thanks to Abdelbasset Jabrane's contribution on Weblate
- Add Portuguese (Brazil) F-Droid description translation, thanks to Jonathan Soares's contribution on Weblate
🧹 Others
- Fixed auto-unfocus when tapping outside
- Fixed calendar not collapsing on Android when scrolled to edge (#411)
Full Changelog: v1.20.1+115...v1.21.0+118
pre-v1.21.0+117
Pre-Released: v1.21.0+117
✨ New Features
- Improve
habit_displayfocus, scrolling, and keyboard action (#409) - Add global
UnfocusOnTapwrapper (#410)
🌐 Localization
- Update Arabic translation, thanks to Abdelbasset Jabrane's contribution on Weblate
- Add Portuguese (Brazil) F-Droid description translation, thanks to Jonathan Soares's contribution on Weblate
🧹 Others
- Fixed auto-unfocus when tapping outside
- Fixed calendar not collapsing on Android when scrolled to edge (#411)
pre-v1.21.0+116
Pre-Released: v1.21.0+116
✨ New Features
- Improve
habit_displayfocus, scrolling, and keyboard action (#409) - Add global
UnfocusOnTapwrapper (#410)
🌐 Localization
- Update Arabic translation, thanks to Abdelbasset Jabrane's contribution on Weblate
- Add Portuguese (Brazil) F-Droid description translation, thanks to Jonathan Soares's contribution on Weblate
🧹 Others
- Fixed auto-unfocus when tapping outside
Full Changelog: v1.20.1+115...pre-v1.21.0+116
v1.20.1+115
Released: v1.20.1+115
🌐 Localization
- Updated Ukrainian translation, thank to maksim2005UKR's contribution on Weblate.
- Updated Russian F-Droid description translation, thanks to an anonymous contribution on Weblate.
🧹 Others
- Fix: Prevent dispatcher reuse across layout/size changes
- Refactor: Adopt new ViewModel call/invocation pattern (#405)
- Migrate habit_status_changer to habit_manager
- Migrate habit_edit to habit_manager
- Migrate import/export to habit_manager
- Replace status flags with event_bus pattern
- Refactor: Enforce widget-local ViewModel boundaries (#400)
- Migrate habit_summary AppSync adapter to AppEvent
- Migrate habit_summary HabitsStatusChanger adapter to AppEvent
- Refactor: Reduce Provider initialization boilerplate (#404)
- Refactor: Habit module architecture cleanup
- Habit Status Changer (#397)
- Move list dispatcher to UI layer
- Switch from delegate to controller model
- Habit Display (#398)
- Move list dispatcher to UI layer
- Habit Summary ViewModel (#401)
- Move habit_summary logic to habit_manager
- Clarify responsibility boundaries
- Unify/rename APIs: change_habit_status, change_record_status, change_record_value, etc.
- Remove unused statuses
- Habit Detail ViewModel (#403)
- Move habit_detail logic to habit_manager
- Clarify responsibility boundaries
- Unify/rename VM APIs: change_habit_status, change_record_status, change_record_value, etc.
- Decouple Habit Detail ViewModel dependencies
- Remove unused statuses
- Habit Status Changer (#397)
Full Changelog: v1.20.0+111...v1.20.1+115
pre-v1.20.1+114
Pre-Released: v1.20.1+114-pre
🌐 Localization
- Updated Ukrainian translation, thank to maksim2005UKR's contribution on Weblate.
- Updated Russian F-Droid description translation, thanks to an anonymous contribution on Weblate.
🧹 Others
- Fix: Prevent dispatcher reuse across layout/size changes
- Refactor: Adopt new ViewModel call/invocation pattern (#405)
- Migrate habit_status_changer to habit_manager
- Migrate habit_edit to habit_manager
- Migrate import/export to habit_manager
- Replace status flags with event_bus pattern
- Refactor: Enforce widget-local ViewModel boundaries (#400)
- Migrate habit_summary AppSync adapter to AppEvent
- Migrate habit_summary HabitsStatusChanger adapter to AppEvent
- Refactor: Reduce Provider initialization boilerplate (#404)
- Refactor: Habit module architecture cleanup
- Habit Status Changer (#397)
- Move list dispatcher to UI layer
- Switch from delegate to controller model
- Habit Display (#398)
- Move list dispatcher to UI layer
- Habit Summary ViewModel (#401)
- Move habit_summary logic to habit_manager
- Clarify responsibility boundaries
- Unify/rename APIs: change_habit_status, change_record_status, change_record_value, etc.
- Remove unused statuses
- Habit Detail ViewModel (#403)
- Move habit_detail logic to habit_manager
- Clarify responsibility boundaries
- Unify/rename VM APIs: change_habit_status, change_record_status, change_record_value, etc.
- Decouple Habit Detail ViewModel dependencies
- Remove unused statuses
- Habit Status Changer (#397)
Full Changelog: v1.20.0+111...pre-v1.20.1+114
pre-v1.20.1+113
Pre-Released: v1.20.1+113-pre
🌐 Localization
- Updated Ukrainian translation, thank to maksim2005UKR's contribution on Weblate.
- Updated Russian F-Droid description translation, thanks to an anonymous contribution on Weblate.
🧹 Others
- Fixed: Dispatcher incorrectly reused on layout/size changes
- Refactor:
Habit Status Changer(#397)- Migrate list dispatcher to UI layer
- Switch data control from delegate to controller
- Refactor:
Habit Display(#398)- Migrate list dispatcher to UI layer
- Refactor: Avoid UI depending on ViewModels from other widgets layer (#400)
- migrate habit_summary AppSync adapter to AppEvent
- migrate habit_summary HabitsStatusChanger adapter to AppEvent
- Refactor: Habit Summary ViewModel (#401)
- Migrate habit_summary logic to habit_manager, refactor responsibility boundaries
- Unify and rename APIs: change_habit_status, change_record_status, change_record_value, etc.
- Remove unused statuses
Full Changelog: v1.20.0+111...pre-v1.20.1+113
pre-v1.20.1+112
Pre-Released: v1.20.1+112-pre
🌐 Localization
- Updated Ukrainian translation, thank to maksim2005UKR's contribution on Weblate.
🧹 Others
- Fixed: Dispatcher incorrectly reused on layout/size changes
- Refactor:
Habit Status Changer(#397)- Migrate list dispatcher to UI layer
- Switch data control from delegate to controller
- Refactor:
Habit Display(#398)- Migrate list dispatcher to UI layer
Full Changelog: v1.20.0+111...pre-v1.20.1+112