Four changes account for most of the visible improvement, and none of them require the new APIs:
- Remove hard-coded screen widths and fixed frame sizes.
- Stop relying on supported interface orientations — the inner display ignores them. Use size classes instead.
- Handle safe area insets as asymmetric; never double one side to account for the other.
- Remove layout branches gated on user interface idiom, which reports phone on a regular-width display.
Rebuild against the iOS 27.1 SDK, then work through those. Adopting ArrangementView and reserved regions is worthwhile afterwards, but it is upside rather than the baseline.
The four, with the greps that find them
grep -rn "UIScreen.main" --include="*.swift" .
grep -rn "userInterfaceIdiom" --include="*.swift" .
grep -rn "\.frame(width:" --include="*.swift" .
grep -rn "safeAreaInsets.left \* 2" --include="*.swift" .
Each maps to a checklist item with the fix in both SwiftUI and UIKit:
- Hard-coded screen dimensions — the inner display is 626 points wide, not ~400
- Orientation locks — the inner display does not honour them
- Asymmetric safe areas — left and right insets differ now
- Idiom assumptions — iPhone Duo reports
.phoneat regular width
What you can defer
Reserved regions, scene accessories, multiple scenes and concentric corners are all real improvements, but none of them is what users notice first. Ship the four above, then decide. Full triage order.