Kizitonwose CalendarView Versions Save

A highly customizable calendar view and compose library for Android.

2.1.0

1 year ago

Compose:

  • Update compose UI version to 1.3.2
  • Use SnapFlingBehavior provided by the compose framework for pagination instead of the snapper library.

2.0.4

1 year ago

Compose:

Fix: LazyList item applies wrong modifier.

2.0.3

1 year ago

Compose:

  • Introduce ContentHeightMode enum which determines how the height of the day content is calculated.
  • Allow null header and footer parameters.

View:

  • Internal optimizations for DaySize behavior implementation.

2.0.2

1 year ago

View:

  • Add rectangle DaySize option that allows the calendar to fill the parent's size.
  • Remove the internal view used to wrap the day cells as they are no longer needed.

2.0.1

1 year ago

View:

  • The default item animator is no longer used internally, you can set an item animator if desired.
  • The footer binder is called after the body content is bound.

2.0.0

1 year ago

What's new:


Breaking changes in the view-based CalendarView class:

  • async() methods have been removed as the calendar is now capable of handling really large date ranges without performance issues. The calendar data is generated as needed. The removed methods are setupAsync() and updateMonthRangeAsync(). Please use the methods setup() and updateMonthData().

  • updateMonthRange() method has been renamed to updateMonthData() as it now allows you to optionally change the first day of the week if needed.

  • daySize property is no longer the Size class type with height and width values. It is now a DaySize enum with three options - Square, SeventhWidth and FreeForm. Please see the DaySize enum documentation to understand each value.

  • inDateStyle enum property has been removed as it is now redundant. The in-dates are present in each month data, you can choose to hide them on the view or keep them.

  • outDateStyle enum property is still available. However, there are now two options EndOfRow and EndOfGrid. The previously available third option None has been removed. You can simply hide the out-dates if you don't need them.

  • scrollMode enum property is now a boolean type named scrollPaged. Set this property to false to have the previous ScrollMode.CONTINUOUS scroll behavior or true to have the previous ScrollMode.PAGED behavior.

  • DayOwner enum has been renamed to DayPosition. The matching case values are:

    • DayOwner.PREVIOUS_MONTH => DayPosition.InDate
    • DayOwner.THIS_MONTH => DayPosition.MonthDate
    • DayOwner.NEXT_MONTH => DayPosition.OutDate
  • maxRowCount property has been removed as there is now a WeekCalendarView class that should be used if a week-based calendar is needed. The main CalendarView class is used for the month calendar implementation.

  • hasBoundaries property has been removed as it is no longer needed with the introduction of the week and month calendar implementations discussed above.

  • monthMarginStart | monthMarginTop | monthMarginEnd | monthMarginBottom properties have been merged into one monthMargins property.

  • monthPaddingStart | monthPaddingTop | monthPaddingEnd | monthPaddingBottom properties have been removed as they provided no real benefit. You can create a custom monthViewClass and set the paddings there if needed.

1.1.0

1 year ago
  • Fix: Don't call setup when orientation is set. #385
  • Provide cancellation function for async actions. #377
  • Update dependencies.

1.0.4

3 years ago
  • Fix: First month displayed doesn't autosize. #289
  • Update dependencies.

1.0.3

3 years ago
  • Account for margins in calculating animation height (thanks @caraesten)

1.0.2

3 years ago
  • Fix: month height is not adjusted in some cases.