QLPreviewController blocks main thread when opening list with many items on iPad
| Originator: | mdf.friedrich | ||
| Number: | rdar://29615943 | Date Originated: | 12-Dec-2016 08:13 AM |
| Status: | Open | Resolved: | |
| Product: | iOS + SDK | Product Version: | 10.2 |
| Classification: | Reproducible: | Always |
Area: Something not on this list Summary: When pressing the list item in the navigation bar of a QLPreviewController with many items (e.g. >= 50), the main thread is blocked while the list is configured and shown. When opening the list with less than 50 items, it'll appear within around 10 seconds on an iPad Air 2 Simulator. This only happens on iPads and when the width trait is regular size (so that the list is presented in a popover). Steps to Reproduce: 1. Create a project with a QLPreviewController whose dataSource returns more than 50 items. 2. Present the QLPreviewController on an iPad. 3. Click the list button. OR 1. Open and run the attached sample project on an iPad. 2. [Optional] Configure number of items. 3. Click "Show QLPreviewController" Button. 4. Click the list button. Expected Results: The list shows more or less immediately while the previews for the items in the list are loaded asynchronously. Actual Results: The main thread is blocked until the list appears. Version: iOS 10.1 (14B72) Notes: On all other configurations (when the list is presented fullscreen) it works as expected. Configuration: Any iPad or iPad Simulator. App needs to have regular width. Attachments: 'QLPreviewTester.zip' was successfully uploaded.
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!