Skip to content

Releases: mikepenz/FastAdapter

v3.1.0

13 Jan 14:15
Compare
Choose a tag to compare

library

  • Annotate abstract methods that are not nullable with NonNull
  • Add IItemList with DefaultItemListImpl
  • Move callback to list implementation
  • Improve default item list implementation
  • add getter for the ItemList and the Comparator
  • allow to provide the IItemList implementation in the ItemAdapter
  • allow to set the Comparator in the CompareableItemListImpl (also make it nullable)
  • implement DiffUtil adjustment to fix some potential issues with the diff update
    • properly update list and notify rv
    • adjust sample to use new ctor
    • FIX #589
  • add new util functions to select an item with a specific identifier including sub items
  • add new util function to deselect all items including subitems
  • recursively iterate over all items and sub items and applying a function on these
  • add test for the DiffUtil

v3.0.5

23 Dec 13:53
Compare
Choose a tag to compare

library

  • add consumer proguard rules for extension module
  • fixed collapse bug in expandable extention
  • fix one expanded item on multi level hierarchies
  • add functionatlity to disable / enable the endless scroll listener
  • fix issue preventing the detection of the filtering being done (itemsFiltered would be called after onReset)

v3.0.4

17 Nov 17:17
Compare
Choose a tag to compare
  • for the unBindViewHolder and onFailedToRecycleView we can not retrieve the item via the adapter because it does no longer exist in the adapter, use the version via the tag

v3.0.3

16 Nov 18:14
Compare
Choose a tag to compare

library

  • no longer retrieve item via the setted Tag on the itemView, but rather from the FastAdapter by using the viewHolder and the position provided by this ViewHolder
  • this prevents an issue that we possibly retrieve an old reference if we set a new item, without the view being rebound
  • add convenient static helper methods to the FastAdapter to get an item by the ViewHolder or by an ViewHolder and a position

v3.0.2

16 Nov 18:13
Compare
Choose a tag to compare

library

  • add consume proguard rule for javax.annotation.Nulable
  • update OnClickListener README
  • add new setting to allow the deactivation of attaching the listeners to the item
  • add methods to return these default listeners if wished to attach manually
  • Upgrade FastAdapterDiffUtil to handle the ModelAdapter
  • update to latest support libs
  • update to latest gradle build tools
  • update to latest materialize
  • improve equals / hashcode methods by also properly handle custom overwritten getIdentifier() methods (don't access the field itself)
  • make intercept method of the ModelAdapter public and accessible, this can be used if you need the Item instead of the Model
    • for example for the DiffUtil

v3.0.1

04 Nov 16:36
Compare
Choose a tag to compare

library

  • fix selection not correctly set again to the viewHolder
  • adjust logic for the "clever" viewholder. always run the calls on the item, and then on the "clever" viewholder. So both can be used
  • improve getModels() and do not require a reverseInterceptor (if the item is a IModelItem)

v3.0.0

29 Oct 14:33
Compare
Choose a tag to compare

MIGRATION GUIDE

v3 is a major new release of the FastAdapter library and comes with a big refactor.

overview

  • a lot of cleanup, and minification
  • v3 is a lot lot smaller
  • faster by eliminating unnecessary overhead
  • new extension functionality, allowing more complex hooks into the FastAdapter
  • expandable is no longer core functionality and was moved to it's own module
  • the realm and firebase modules were removed

library

  • For a full changelog read the commit history please
  • implement new ModelAdapter, base ItemAdapter on modelAdapter
  • adjust all methods and add additional internal methods (which need to be implemented in the IItemAdapter)
  • Generic* is now Model*. to reflect more what it does.
  • ModelItemAdapter
  • ModelAbstractITem
  • reverse the filter method. true means it stays
  • the initial index of the EndlessRecclerOnScrollListener is now also 0
  • idDistributor will be on by default again to prevent unnecessary issues because people don't provide id's
  • Allow DiffUtil to calculate on background thread THANKS @ Aleksander Mielczarek
  • Move the type instance cache out of the adapter
    • The default implementation will use an shared cache for all fast adapter instances
    • Its now possible to implement an own caching solution for the type instances
  • provide a new FastAdapter.ViewHolder which allows the viewHolder to do the heavy work (the item can be even more dumb)
    • if FastAdapter.ViewHolder is used, the callbacks on the item are not used
  • add reverse interceptor
  • add new IAdapterNotifier allowing to adjust the code of notifying the adapter after a set happened

v2.6.3

29 Jul 20:47
Compare
Choose a tag to compare

library

  • update to latest support libraries
  • update to latest build tools, target, compile versions
  • and all other stuff

v2.6.2

07 Jun 18:04
Compare
Choose a tag to compare

library

  • make sure we just call the methods on the fastAdapter object which is passed to the clickListener (otherwise we might use the wrong reference)
    • This is basically an addition to properly support shared `RecycledViewPool's
  • fix collapsing of sub sub hierarchies. Thanks to @CodyEngel for the report + fix

v2.6.1

07 Jun 08:52
Compare
Choose a tag to compare

library

  • minor changes in the EventHookUtil and the onClick listener to make it more secure against potential concurrency issues while the list is updated and an event is handled
  • make GenericItemAdapter nullable
  • add IHookable interface
  • update gradle build's to support the latest gradle build tools
    • fix output file renaming