I think in this case the user area should be the same as the total area (857 x 384) and the safe area insets should be something like: 23 top (status bar), 23 left (camera notch), 0 bottom, 71 right (navigation bar).
In this thread there are more details and screenshots:
Another problem is that if one uses a theme and “android:windowFullscreen” is set to true, then the top safe area inset is never reported. It always has a value of 0, in any orientation (also upright) and regardless of whether kiosk mode is used.
Yet another problem is that older devices do not mantain kiosk mode correctly, as was reported here:
The poster came up with a solution but I’ve found that it only works partially. In my tests (Galaxy 5, API 26) the status bar appears as soon as a selection is made in a pop-up menu.
I’ve found that what does work with older devices is to use a fullscreen theme, but then JUCE cannot report the size of the safe area (top cutout) on newer devices!
My solution for that is to use two different themes. Since the support for cutouts was introduced with API Level 28, I am using a non-fullscreen theme from that level on (placed in the folder values-v28) and a fullscreen one for previous API’s (in the values folder). I am not sure if this is the correct approach, but it seems to work.
Still, JUCE team, please take a look into fixing the safe area insets. It’s very hard to get an app to look right without them!
Hi, I was wondering if anybody is looking into this? I know getting the actual usable area in Android is for some strange reason particularly difficult, but this problem keeps coming up. A few more examples: