# Set UIInterfaceOrientationPortraitUpsideDown in Projucer

**URL:** <https://forum.juce.com/t/set-uiinterfaceorientationportraitupsidedown-in-projucer/28202>\
**Category:** The Projucer\
**Created:** [June 20, 2018, 11:19am UTC](https://forum.juce.com/t/set-uiinterfaceorientationportraitupsidedown-in-projucer/28202 "2018-06-20T11:19:15Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![NoobieMcNoob](https://avatars.discourse-cdn.com/v4/letter/n/90ced4/32.png) [@NoobieMcNoob](https://forum.juce.com/u/NoobieMcNoob)\
**Post date:** [June 20, 2018, 11:19am UTC](https://forum.juce.com/t/set-uiinterfaceorientationportraitupsidedown-in-projucer/28202/1 "2018-06-20T11:19:15Z")

</div>

Hi there!

I’m making an app that needs the ability to be turned upside down on iOS. In the Projucer app there are only 4 options:

- Default (Portrait and Landscape)
- Portrait and Landscape
- Portrait
- Landscape

I would like to propose to also implement

- All
- Portrait and Upside Down

I get that we’re meant to implement the call `setOrientationsEnabled(int allowedOrientations)` and use the enums  
`Desktop::DisplayOrientation::upright`  
`Desktop::DisplayOrientation::upsideDown`  
`Desktop::DisplayOrientation::rotatedClockwise`  
`Desktop::DisplayOrientation::rotatedAntiClockwise`  
`Desktop::DisplayOrientation::allOrientations`

My problem with this solution is that I have native implementation on iOS and Android, and so I need the flags to be set correctly directly in the plist whenever I run the projucer. Setting the flags above in the Juce part of my app does not have an impact on the native part of my apps. Furthermore I need to implement ViewController specific fixes for each visible VC on iOS for it to understand that I really, really want it to be able to turn. But that is my choice when making a native implementation, so that’s fair.  
But I would love if I could set the flags directly from the projucer, as they are reset each time I run it.

The changes needed would be related to a quick fix I made in `juicer_ProjectExport_Xcode.h`: (see portraitupsidedown)

```
for (int i = 0; i < (orientationsAreTheSame ? 1 : 2); ++i)
{
    StringArray iOSOrientations;

    if (screenOrientations[i].contains ("portrait")) { iOSOrientations.add ("UIInterfaceOrientationPortrait"); }
    if (screenOrientations[i].contains ("portraitupsidedown")) { iOSOrientations.add ("UIInterfaceOrientationPortraitUpsideDown"); }
    if (screenOrientations[i].contains ("landscape")) { iOSOrientations.add ("UIInterfaceOrientationLandscapeLeft"); iOSOrientations.add ("UIInterfaceOrientationLandscapeRight"); }

    addArrayToPlist (dict, String ("UISupportedInterfaceOrientations") + plistSuffix[i], iOSOrientations);
}

```

Is this something you could think about implementing?  
In any case, Thanks!
