6.0.0-beta.1
DenTelezhkin
released this
10 Sep 17:53
·
229 commits
to main
since this release
This is a major release with some breaking changes, please read DTTableViewManager 6.0 Migration Guide
- Added
updateVisibleCells(_:) method
, that allows updating cell data for visible cells with callback on each cell. This is more efficient than callingreloadData
when number of elements inUITableView
does not change, and only contents of items change. - Implement
configureEvents(for:_:)
method, that allows batching in several cell events to avoid using T.ModelType for events, that do not have cell created. - Added event for
UITableViewDelegate
tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:
- Added events for focus engine on iOS 9
- Added events for iOS 11
UITableViewDelegate
methods:tableView(_:leadingSwipeActionsConfigurationForRowAt:
,tableView(_:trailingSwipeActionsConfigurationForRowAt:
,tableView(_:shouldSpringLoadRowAt:withContext:
UITableViewDelegate
andUITableViewDatasource
implementations have been refactored fromDTTableViewManager
toDTTableViewDelegate
andDTTableViewDataSource
classes.DTTableViewManager
now allows registering mappings for specific sections, or mappings with any custom condition.- Added
move(_:_:)
method to allow setting up events, reacting totableView:moveRowAt:to:
method.
Breaking
- Signature of
move(_:_:)
method has been changed to make it consistent with other events. Arguments received in closure are now:(destinationIndexPath: IndexPath, cell: T, model: T.ModelType, sourceIndexPath: IndexPath)
tableView(UITableView, moveRowAt: IndexPath, to: IndexPath)
no longer automatically moves items, if current storage isMemoryStorage
. Please useMemoryStorage
convenience methodmoveItemWithoutAnimation(from:to:)
to move items manually.
Deprecated
- Error handling system of
DTTableViewManager
is deprecated and can be removed or replaced in future versions of the framework.