mirror of
https://github.com/Instagram/IGListKit
synced 2026-05-20 07:48:32 +00:00
Summary: * Currently, we invalidate the entire layout whenever we make any updates, like inserting new rows at the bottom. * This is one of the most common causes of frame drop on feed, so let's allow partial invalidation based on the minimum modified section. * For example, if we delete section 10, move section 4, and insert section 12, we would re-calculate the layout starting at section 4. * This gets us the majority of the performance gains and it's relatively simple. In the future, we can make further optimizations, like 1) index path level invalidation and 2) finding the smallest modified index path whose properties (ex: size) have actually changed. Reviewed By: rnystrom Differential Revision: D6510140 fbshipit-source-id: 6ff1766b400c5aa82abc29ae76ab96660c3bb106 |
||
|---|---|---|
| .. | ||
| Common | ||
| Internal | ||
| IGListAdapter.h | ||
| IGListAdapter.m | ||
| IGListAdapterDataSource.h | ||
| IGListAdapterDelegate.h | ||
| IGListAdapterUpdateListener.h | ||
| IGListAdapterUpdater.h | ||
| IGListAdapterUpdater.m | ||
| IGListAdapterUpdaterDelegate.h | ||
| IGListBatchContext.h | ||
| IGListBindable.h | ||
| IGListBindingSectionController.h | ||
| IGListBindingSectionController.m | ||
| IGListBindingSectionControllerDataSource.h | ||
| IGListBindingSectionControllerSelectionDelegate.h | ||
| IGListCollectionContext.h | ||
| IGListCollectionViewLayout.h | ||
| IGListCollectionViewLayout.mm | ||
| IGListDisplayDelegate.h | ||
| IGListGenericSectionController.h | ||
| IGListGenericSectionController.m | ||
| IGListKit.h | ||
| IGListReloadDataUpdater.h | ||
| IGListReloadDataUpdater.m | ||
| IGListScrollDelegate.h | ||
| IGListSectionController.h | ||
| IGListSectionController.m | ||
| IGListSingleSectionController.h | ||
| IGListSingleSectionController.m | ||
| IGListStackedSectionController.h | ||
| IGListStackedSectionController.m | ||
| IGListSupplementaryViewSource.h | ||
| IGListUpdatingDelegate.h | ||
| IGListWorkingRangeDelegate.h | ||
| Info.plist | ||