Share Extension Orientation Bug

Originator:an00na
Number:rdar://25760567 Date Originated:15-Apr-2016 07:10 PM
Status:Closed Resolved:in iOS 10
Product:iOS SDK Product Version:9.3.1
Classification:Crash/Hang/Data Loss Reproducible:Always
 
Summary:
Non-fullscreen share extension view controller should not be presented in landscape mode on a portrait-only view controller of host app, but currently it happens.

What's worse, rotating to portrait while the share extension view controller is still being presented in landscape will cause the share extension view controller to be dismissed automatically but the dismissal transition cannot complete. The remainder of the share extension view controller prevents user from interacting with the host app afterwards.

Steps to Reproduce:
1. Install Wunderlist. It is the only app I know that presents it share extension this way.
2. Launch sample app.
3. Tap Share button.
4. Rotation iPhone to landscape mode after UIActivityViewController is presented.
5. Tap Wunderlist icon on UIActivityViewController.
6. See the host app's portrait-only view controller is rotated to landscape mode. It would be ugly in real app.
7. Dismiss Wunderlist share extension.
8. Repeat step 3~5. But this time, rotate iPhone to portrait mode immediately after you see Wunderlist share extension show up. You may need to practice several times before you can finally reproduce it because the timing is not easy.
9. You will see Wunderlist share extension dismiss itself but the dismissal transition is incomplete and you can do nothing afterwards.

Sample code: http://cl.ly/170c1U0Y3E2V

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!