horizontal_list_calendar 2.0.0 copy "horizontal_list_calendar: ^2.0.0" to clipboard
horizontal_list_calendar: ^2.0.0 copied to clipboard

A customizable horizontal list view calendar widget with month/week views, min/max & disabled dates, and custom day rendering.

Changelog #

2.0.0 - 2026-07-18 #

Breaking Changes #

  • Removed the flutter_riverpod dependency. State is now handled by a plain HorizontalListCalendarController (a ChangeNotifier, same pattern as TextEditingController) instead of an internal Riverpod provider.
  • scrollController is now optional (previously required).
  • Raised the minimum Flutter version to 3.27.0 to match APIs actually used (Column.spacing, Color.withValues).

Added #

  • HorizontalListCalendarController for external control: jumpToDate(), selectDate(), nextMonth() / previousMonth(), nextWeek() / previousWeek(), setViewMode().
  • minDate, maxDate, and disabledDates (plus disableDate() / enableDate() at runtime), with disabledFillColor / disabledTextStyle styling.
  • Week view mode (CalendarViewMode.week) alongside month view, with configurable startOfWeek (Monday/Sunday).
  • dayBuilder parameter for fully custom day-cell rendering.
  • locale parameter for date and digit formatting.
  • onVisibleRangeChanged callback, fired when the visible month/week changes.

Fixed #

  • The calendar no longer re-centers the scroll view on every date tap — only when the visible month/week actually changes, or on initial mount. Previously it fought manual scrolling on every selection.
  • Guarded scroll-to-selection against the ScrollController not yet being attached, which could previously throw.
  • Normalized all internal dates to midnight consistently; previously, changing month back to the current month used a raw DateTime.now() with a time-of-day component while everywhere else stripped it, which was a latent equality bug.
  • Removed the per-instance ProviderScope that made external control and testing awkward.
  • Day-of-month digits now respect locale (e.g. Bangla digits with locale: 'bn') instead of always rendering ASCII digits.

1.0.0 - 2025-06-28 #

Fix Bug #

  • Fix the scroll controller bug.

0.1.0 - 2025-06-28 #

Added #

  • Add canSelectDate, monthChangeButton parameter to control the calendar functionality

0.0.9 - 2025-05-26 #

Added #

  • Created the HorizontalListCalendar widget for displaying a horizontally scrollable calendar.
  • Integrated Riverpod for state management of the selected date.
  • Added example usage and basic documentation.

Changed #

  • Renamed 'selectedDateBorderColor' to 'selectedColor' for better clarity.

Added New Parameters #

  • 'iconSize' for icon button
  • 'curve' for scrolling animation curve
  • 'duration' for scrolling animation duration
  • 'selectedFillColor' for the selected date container fill color
  • 'selectedTextStyle' for the selected date text style
  • 'unSelectedFillColor' for the unselected date container fill color
  • 'unSelectedTextStyle' for the unselected text style
  • 'todayFillColor' for the today date Container fill color
  • 'todayTextStyle' for the today text style
  • 'headerTextStyle' for the header text style

Removed #

  • 'bodyPadding' removed for centering the selected date
12
likes
160
points
49
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A customizable horizontal list view calendar widget with month/week views, min/max & disabled dates, and custom day rendering.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, intl

More

Packages that depend on horizontal_list_calendar