[ 
https://issues.apache.org/jira/browse/CB-1209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13430816#comment-13430816
 ] 

Kevin Hawkins commented on CB-1209:
-----------------------------------

Pull request: https://github.com/apache/incubator-cordova-ios/pull/41
                
> CDVViewController.supportedOrientations not set in a timely fashion
> -------------------------------------------------------------------
>
>                 Key: CB-1209
>                 URL: https://issues.apache.org/jira/browse/CB-1209
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.0.0
>         Environment: Mac OS X Lion, Xcode 4.4, iOS SDK 5.1
>            Reporter: Kevin Hawkins
>            Assignee: Shazron Abdullah
>             Fix For: 2.1.0
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The iOS template app (reasonably) expects to be able to access its 
> viewController's `supportedOrientations` property to process the app's 
> supported orientations, in `application:didFinishLaunchingWithOptions:`.  
> However, supportedOrientations is not set until `CDVViewController`'s 
> `viewDidLoad` method, which isn't called until the window is made visible.  
> This trickles down into the status bar being forced into a state of 
> `UIDeviceOrientationUnknown` by the forceStartupRotation functionality in the 
> app delegate.
> What's more, when the status bar orientation is forced by setting 
> UIApplication's statusBarOrientation property explicitly, it will no longer 
> adhere to any autorotation behavior.  This means that the status bar is 
> permanently set into an unknown state, which basically impacts the main view 
> size, since [[UIScreen mainScreen] applicationFrame] assumes an unknown state 
> means that it gets the whole device frame for its area.
> Making the window visible before testing the orientations is a workaround, 
> but arguably the initial setting of the supportedOrientations property should 
> happen outside of the view lifecycle (i.e. in the `init` functionality of 
> CDVViewController), since it has no dependency on any UI state--it reads 
> `UISupportedInterfaceOrientations` configuration data from the app bundle to 
> determine valid orientations.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to