Skip to content

v5.0.0-rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@davideas davideas released this 28 May 15:42
· 334 commits to master since this 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

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() and onPostUpdate() 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() and clearAllBut(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() and selectAll() 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 class HandlerCallback 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.