Simplify the wide-layout details panel: floating-only on iPhone, side as a preset setting

iPhone landscape now uses the floating panel only, always on the right;
the pin and side-toggle buttons on the grabber are gone and the pinned
setting resolves to false on phone.

iPad and macOS default to the pinned side-by-side layout, keep the pin
button to switch to floating, and pick the panel side in the preset's
panel settings instead of an on-screen arrow. The pinned state persists
as a layout preference: closing the player or the hidden default
visibility no longer resets it.

Removes PanelAlignmentButton, the global floatingDetailsPanelSide setting
and its key, FloatingPanelSide.opposite, and the legacy
wideLayoutPanelAlignment preset field.
This commit is contained in:
Arkadiusz Fal
2026-09-26 22:48:11 +02:00
parent c33d66ca1f
commit 4210b0ab05
15 changed files with 122 additions and 137 deletions

View File

@@ -818,6 +818,18 @@ final class PlayerControlsSettingsViewModel {
}
}
/// Current panel side in the standard wide layout (iPad/macOS).
var panelWideLayoutSide: FloatingPanelSide {
panelSettings.effectiveWideLayoutSide
}
/// Synchronously updates the panel side in the standard wide layout.
func syncPanelWideLayoutSide(_ side: FloatingPanelSide) {
updatePanelSettingsSync { settings in
settings.wideLayoutSide = side
}
}
/// Synchronously updates a page's corner-layout region assignment.
func setPanelPageRegion(_ region: PanelRegion, for pageType: PanelPageType) {
updatePanelSettingsSync { settings in