mirror of
https://github.com/Instagram/IGListKit
synced 2026-05-06 06:58:26 +00:00
Summary: **Context** When performing non-animated updates, `IGListKit` does so by beginning a `CATransaction` before `performBatchUpdates:`, and ending it in the completion block. While this disables animations for the collection view updates, it is feasible that some other changes might be bundled into the same transaction, given that we have no guarantee of the completion block being called inline. It seems that this is happening in practice and occasionally disrupting `UIViewPropertyAnimator` animations, forcing the completion immediately. **This Change** To fix this issue, we can commit the transaction inline. Here we use `performWithoutAnimation:`, although it's possible that this is just a wrapper around `CATransaction` calls anyway. Because the change may have unknown side effects, this change is gated by an experiment. Reviewed By: maxolls Differential Revision: D19150307 fbshipit-source-id: f7cff46ac7141609f42caafaf69bad71a980ad29 |
||
|---|---|---|
| .. | ||
| Internal | ||
| IGListAssert.h | ||
| IGListBatchUpdateData.h | ||
| IGListBatchUpdateData.mm | ||
| IGListCompatibility.h | ||
| IGListDiff.h | ||
| IGListDiff.mm | ||
| IGListDiffable.h | ||
| IGListDiffKit.h | ||
| IGListExperiments.h | ||
| IGListIndexPathResult.h | ||
| IGListIndexPathResult.m | ||
| IGListIndexSetResult.h | ||
| IGListIndexSetResult.m | ||
| IGListMacros.h | ||
| IGListMoveIndex.h | ||
| IGListMoveIndex.m | ||
| IGListMoveIndexPath.h | ||
| IGListMoveIndexPath.m | ||
| NSNumber+IGListDiffable.h | ||
| NSNumber+IGListDiffable.m | ||
| NSString+IGListDiffable.h | ||
| NSString+IGListDiffable.m | ||