- Added: isFirst and isLast to Metadata
- Added: API to get position of adapter item
- Fixed: metadata position was not correct sometimes
- Fixed: timing bug when paging would sometimes not start when initial data was below threshold
- Fixed: issue #43
- Added: isRebinding flag to onBind Metadata
- Fixed: unable to update data from a background thread
- Fixed: paging not triggered when RecyclerView can't scroll
- Fixed: paging triggers on EmptyIndicator
- Updated: internal diffing mechanism to fix the famous inconsistency crash
- Updated: removed deprecated Bintray publish and moved to Jitpack
- Added: new selection trigger - Manual
- Added: support for Android view binding
- Fixed: selection metadata not updated correctly
- Added: new selection trigger - Manual
- Fixed: selection metadata not updated correctly
- Breaking Changes: Kotlin is now the first priority of this library and as such comes a full API change, every Module, Hook and State is now created using dedicated DSLs
- Added:
- Ability to trigger selection with click and long click
- More "update" function to OneAdapter API
- More tests
- Fixed: bug in paging threshold not calculated correctly
- Improved: ItemSelectionModule new abilities:
- Start manual selection
- New callbacks: onSelectionStarted, onSelectionEnded
- New queries: isSelectionActive & isPositionSelected
- Improved: SwipeEventHook with Up and Down swipe direction support
- Breaking Changes:
- Right and Left swiping direction changed to Start and End for better support LTR and RTL
- Fixed: recycler view crash due to race condition with background and ui threads while request multiple diffing quickly
- Breaking Changes:
- Wrapped event hooks models with Item object in order to get additional information like item position, isSelected, etc... (using the Metadata object)
- Fixed: clear() not triggering onBind of emptiness module when the adapter was already empty
- Breaking Changes:
- Wrapped each model with Item object in all module's OnBind and onUnbind call in order to get additional information like item position, isSelected, etc... (using the Metadata object)
- Removed modules actions class, each module now holds its own actions
- Added: ability to get view types from the adapter to support GridLayoutManager.SpanSizeLookup
- Added: more tests to cover paging
- Added: support for ButterKnife and DataBinding
- Added: more utility functions like item visibility
- Added: examples for nested RecyclerView, ButterKnife and DataBinding in the sample project
- Fixed Bug: Sync issues with background and ui threads when using nested RecyclerViews with OneAdapter
- Breaking Changes:
- ViewBinder getRootView function changed to a property
- Added HookConfig for SwipeEventHook to specify the supported swipe directions
- Added: First Bind Animation Config
- Improved: threading mechanism
- Added: common UI tests
- Breaking Changes:
- RecyclerView is now a constructor parameter instead of an attachment function
- OnUnbind functions now includes the model as a parameter
- Change: Diffable is now mandatory when working with OneAdapter
- Bug Fixes:
- Paging Module not working properly with some layout manager
- onUnbind call now called when the view is recycled instead of detached from window
- Removed the res folder to prevent conflicts
- Event Hooks:
- Swipe Event Hook
- Bug fixes related to the diffing mechanism
- Removed unnecessary lines from manifest
First Release Includes:
- Modules:
- Item Module
- Emptiness Module
- Paging Module
- Selection Module
- Event Hooks:
- Click Event Hook
- Diffable Interface