v5.0.0-rc1
Pre-release
Pre-release
⚠️ Warning: If you come from previous versions, update your code by following the Wiki page Migrations as well as issue #200 for deprecation and refactoring.
New features
- Resolves #236 - Scrollable Headers and Footers: items that lay respectively at the top and at the bottom of the main items.
- Resolves #233 brand new Endless Scrolling with
pageSize
andtargetCount
limits.
Deprecation and Refactoring
- Refactored and Deprecated all marked methods in issue #200.
Improvements
- Resolves #176 - Drop event, without swapItems on move (
ItemTouchHelperCallback
can now be set). - Resolves #190 - Added method to change the SnackBar Action color.
- Resolves #198 - Added
onPostFilter()
andonPostUpdate()
that allow to modify the list just after the Asynchronous filter and update. - Added new methods to support
DiffUtil
and to animate changes with this new Android class, after an update or filter operations, BUT it's strongly suggested to use the default calculation. See demoApp in Async Filter example to compare the 2 solutions: the default solution results faster at least of the double! - Added methods
clear()
andclearAllBut(viewTypesToRetain)
,addItem(item)
,shouldNotifyParentOnClick()
,getAllBoundViewHolders()
, see #201. - Resolves #227 - Elevated header items and Elevated sticky header items.
- Resolves #248 - Surgery precision for transparency and elevation for sticky headers.
- Resolves #228 - No XML layout configuration for sticky headers.
- Resolves #168 - Added Info log for parameters and listeners initialization (to see, enable logs as usual) and added version log at startup and Info on animation when changing LayoutManager.
- Runtime background, changing state has short enter-exit fade animation.
- Selection methods
clearAll()
andselectAll()
don't notify change anymore. - Imported the last ActivatedPosition in the
ActionModeHelper
, which has a new method:getActivatedPosition()
. - Optimized selection coherence for a parent with a selected sub item at any level.
- Reviewed how the internal
Handler
can be overridden: new internal classHandlerCallback
has been created. - Upgrade to API 25 and Android Studio project to 2.2.3.
- Reviewed Java Doc.
Fixes
- Fixed #184 - Problem with endless scrolling and LOAD_MORE_RESET delay.
- Fixed #191 - AsyncFilter fatal error (Empty string will skip the search).
- Fixed #210 - Problem with item content change animation.
- Resolved the high delay for scroll animation on the first visible item after rotation.
- Fixed collapsing bug for a parent with selected sub items.
- Fixed #229 - Calling
hideAllHeaders()
might lead to NullPointerException (Fixed NPE and modified behavior when hiding headers: now, it doesn't disable anymore the sticky flag) - Fixed #244 - Header item doesn't swap if it matches with the first layout position.
- Fixed #265 - UndoHelper dismissed quickly with SnackBar predefined lengths.
- Fix for
adjustSelection()
when adding new items and some items are already selected. - Decided to adopt Solution 2 for scrolling animation; Solution 1 has been removed. Fixed a couple of scrolling animation issues, now scrolling are animated properly in all situations. Scrollable Headers will now scroll animate. Scrollable Footers cannot scroll animate, when inserted the very first time.
Demo App
- Added example with ViewPager.
- Added example for Item Model Holder.
- Added option for DiffUtil in Async Filter example, to compare the 2 solutions implemented. (Refreshing the some lists will update the subtitle of the items, with the numbers of the refreshes).
- Modified demoApp to showcase Scrollable Expandable Headers and Footers.
- Modified demoApp to showcase the new Endless Scroll.
- Removed some calls of deprecated methods.