Releases: DenTelezhkin/DTCollectionViewManager
Releases · DenTelezhkin/DTCollectionViewManager
5.3.1
- Initial support for Swift 3.2 (Xcode 9 beta-1).
- Fixed
registerNiblessHeader
andregisterNiblessFooter
to properly call nibless supplementary methods.
5.3.0
- Use new events system from
DTModelStorage
, that allows events to be properly called for cells, that are created usingViewModelMappingCustomizing
protocol.
5.2.0
- Setting
CollectionViewUpdater
instance tocollectionViewUpdater
property onDTCollectionViewManager
now triggersdidUpdateContent
closure onCollectionViewUpdater
.
5.1.0
Dependency changelog -> DTModelStorage 4.0.0 and higher
CollectionViewUpdater
has been rewritten to use newStorageUpdate
properties that track changes in order of their occurence.CollectionViewUpdater
reloadItemClosure
andDTCollectionViewManager
updateCellClosure
now accept indexPath and model instead of just indexPath. This is done because update may happen after insertions and deletions and object that needs to be updated may exist on different indexPath.
5.0.0
No changes
5.0.0-beta.3
DTModelStorage/Realm
dependency now requires Realm 2.0
5.0.0-beta.2
- Enables
RealmStorage
fromDTModelStorage
dependency.
5.0.0-beta.1
This is a major release, written in Swift 3. Read [Migration guide](Documentation/DTCollectionViewManager 5 migration guide.md) with descriptions of all features and changes.
Dependency changelog -> DTModelStorage 3.0.0 and higher
Added
- New events system that covers almost all available
UICollectionViewDelegate
,UICollectionViewDataSource
andUICollectionViewDelegateFlowLayout
delegate methods. - New class -
CollectionViewUpdater
, that is calling all animation methods forUICollectionView
when required by underlying storage. updateCellClosure
method onDTCollectionViewManager
, that manually updates visible cell instead of callingcollectionView.reloadItemsAt(_:)
method.coreDataUpdater
property onDTCollectionViewManager
, that createsCollectionViewUpdater
object, that follows Apple's guide for updatingUICollectionView
fromNSFetchedResultsControllerDelegate
events.isManagingCollectionView
property onDTCollectionViewManager
.unregisterCellClass(_:)
,unregisterHeaderClass(_:)
,unregisterFooterClass(_:)
,unregisterSupplementaryClass(_:forKind:)
methods to unregister mappings fromDTCollectionViewManager
andUICollectionView
Changed
- Swift 3 API Design guidelines have been applied to all public API.
- Event system is migrated to new
EventReaction
class fromDTModelStorage
- Now all view registration methods use
NSBundle(forClass:)
constructor, instead of falling back onDTCollectionViewManager
viewBundle
property. This allows having cells from separate bundles or frameworks to be used with singleDTCollectionViewManager
instance.
Removals
viewBundle
property onDTCollectionViewManager
itemForVisibleCell
,itemForCellClass:atIndexPath:
,itemForHeaderClass:atSectionIndex:
,itemForFooterClass:atSectionIndex:
were removed - they were not particularly useful and can be replaced with much shorter Swift conditional typecasts.- All events methods with method pointer semantics. Please use block based methods instead.
registerCellClass:whenSelected
method, that was tightly coupling something that did not need coupling.
4.8.0
Changed
- Now all view registration methods use
NSBundle(forClass:)
constructor, instead of falling back onDTCollectionViewManager
viewBundle
property. This allows having cells from separate bundles or frameworks to be used with singleDTCollectionViewManager
instance.
Deprecations
viewBundle
property onDTCollectionViewManager
4.7.0
Dependency changelog -> DTModelStorage 2.6.0 and higher