Skip to content

v4.0.0

Latest
Compare
Choose a tag to compare
@noties noties released this 24 Apr 09:14
· 133 commits to master since this release

Added

  • Item.Wrapper and Item#wrap
  • ItemWrapper#findWrapped method to obtain wrapper of specific type
  • Item default toString implementation
  • AdaptViewGroup#init convenience method that takes ChangeHandler directly
  • AdaptView#init convenience method that takes Item<?> directly
  • LineNumberId utility to get current line number in source code
  • AdaptDivider utility to divide supplied list (convenience to add dividers/separators)
  • Edges utility class to encapsulate padding/margin
  • Decorator in StickyItemDecoration to additionally process sticky item view
  • A collection of wrappers:
    • BackgroundWrapper
    • FrameWrapper
    • IdWrapper
    • MarginWrapper
    • OnBindWrapper
    • OnClickWrapper
    • PaddingWrapper
    • EnabledWrapper

Changed

  • Item.Key#builder now requires root item, Item.Key.Builder#build does not require argument;
    this is done due to possible confusion of positions of items (so, each call wrap previous)
  • ItemView#bind is overridden by default (no op)
  • AdaptViewGroup#findViewFor uses Item#equals instead of == operator
  • AdaptView uses Item#equals instead of == operator
  • ItemWrapper moved to package io.noties.adapt.wrapper

Deprecated

  • Item.Key.single in favor of Item.Key.just

Removed

  • ItemWrapper.Provider and dedicated constructor ItemWrapper#init(Provider) are removed