UICollectionView Interactive Movement Jump Regression

Originator:brian
Number:rdar://7401200 Date Originated:10/22/19
Status:Open Resolved:
Product:UIKit Product Version:13.0
Classification:Incorrect/Unexpected Behavior Reproducible:yes
 
Issue: When using UICollectionView’s interactive movement APIs, calls to -updateInteractiveMovementTargetPosition: will occasionally cause the interactively moving cell to jump back to its original position. This occurs when the cell gets close to its original starting position.

This happens with both UICollectionViewController’s default setup and custom usage of the interactive movement APIs with a manually created gesture recognizer.

Steps to repro:
1. Begin the movement by long pressing on an item in the collection view.
2. Pan until the collection view swaps the interactive cell with another cell.
3. Pan back (slowly, to make it obvious) to the original cell’s position.

Expected result: No jump should occur. This was the behavior on iOS 12.

Actual result: A jump occurs. This is new behavior on iOS 13.

Regression: This issue is new in iOS 13. The same code on iOS 12 does not reproduce the issue. See provided sample app to test it out.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!