Visible view controller behind a transparent modal does not rotate

Originator:miles.chris
Number:rdar://14449097 Date Originated:16-Jul-2013
Status:Closed Resolved:05-Aug-2013
Product:iOS SDK Product Version:7.0 (11A4414e)
Classification:Serious Bug Reproducible:Always
 
Summary:

In iOS 7, we can present a modal view controller with transparency, so that the previous view controller is still visible behind it. However, rotation events are not delivered to the back view controller, only the front-most (modal) view controller.

Steps to Reproduce:

* Present a modal view controller with transparent background by specifying modalPresentationStyle of UIModalPresentationCustom and using a transitioningDelegate to specify a custom UIViewControllerAnimatedTransitioning object.
* Don't remove the source view controller so it remains visible behind the modal view controller
* Rotate the device
* The front-most (modal) view controller rotates as expected
* The back view-controller (still visible behind the transparent modal) does not rotate and does not receive any rotation event callbacks (such as -willRotateToInterfaceOrientation:duration:)

Expected Results:

Any view controllers containing views that are still on screen and visible should receive rotation events.

Actual Results:

Only the front most view controller appears to receive rotation events. A view controller with a view that is still on screen and visible behind a transparent modal view controller does not receive any rotation events.

Regression:

n/a

Notes:

A sample project to demonstrate this behaviour is attached.

Screen shots to help explain this behaviour are attached.

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!