Repository navigation
Conversation
Landscape mode (charts only, no HUD or status row) was keyed to the screen being wider than tall. The unfolded inner display is wider than tall but has regular height, so after a fold/unfold the HUD and status row disappeared. Key it to compact vertical size class instead. Chart row heights were sized from the longer screen dimension, which only makes sense in phone landscape; elsewhere use the table height so the charts fit the inner display. In inner landscape the status bar is vertical, so there is no top safe area and the first row met the display corners. The table is now inset by the corner-adapted safe area, updated when the safe area changes and scrolled back to the top if it was there. The warning banners instead run to the top edge (the display corners round them) with their content inset by that amount. dev's toolbar is a system toolbar, which already moves to the vertical bar on the trailing edge, so it needs no change.
The HUD view uses secondarySystemBackground but stops at the safe area, while the cell's default white background spans the full table width. On iPhone Duo's inner display the status bar is a trailing column, so the white cell background showed as a box beside the time and Wi-Fi status.
On iPhone Duo's inner display the HUD stack view stretched across about 900 pt, and the CGM pill's corner sat against the display's much larger corner curve. Limit the row to 500 pt, centered; every iPhone in portrait is narrower than that, so phones are unchanged.
ps2
added a commit
that referenced
this pull request
Oct 29, 2026
…2628) The next-dev counterpart of the fixes in #2627 that #2606 didn't have. - The status table now extends under the leading and trailing safe areas, as it did before it was hosted in SwiftUI, so the HUD row's grey fills the vertical status bar column beside the time instead of leaving a white box. Cell content still stays within the safe area. - The HUD cell's background matches the HUD view, so the cell is grey where it extends past the HUD. - The HUD row is capped at 500 pt and centered, so on the unfolded Duo it no longer stretches across the display with the CGM pill against the display corner. Every iPhone in portrait is narrower, so phones are unchanged.
Camji55
approved these changes
Oct 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The dev version of #2606: fixes the status screen on iPhone Duo's unfolded inner display (951×669 pt in landscape, regular size classes, vertical status bar on the trailing edge).
What was wrong
Changes
Landscape mode keys off compact vertical size class (an iPhone in landscape) instead of aspect ratio.
Chart heights use the table height, except in phone landscape, where they keep using the longer dimension.
When there is no top status bar, the table is inset by the corner-adapted safe area (
edgeInsets(for: .safeArea(cornerAdaptation: .vertical)), iOS 26): 16 pt on the Duo, 0 on other iPhones. It is updated when the safe area changes (so it survives a fold/unfold) and keeps the table scrolled to the top. The warning banners instead run to the top edge, so the display corners round them, with their content inset by the same amount.The HUD row is capped at 500 pt and centered. Every iPhone in portrait is narrower than that, so phones are unchanged.
The HUD cell's background matches the HUD view (
secondarySystemBackground).Unlike next-dev, dev's action bar is a system toolbar, which already moves to the trailing vertical bar on the Duo, so it needs no change. dev also has no status bar background view.
Testing
Built with Xcode 27.1 and run in the simulator:
Not checked by screenshot: an iPhone held in landscape (charts only); the code path is the standard compact-height case.