ui: size subtitle glass to text within eighty percent width
This commit is contained in:
@@ -251,7 +251,7 @@ The inline URL field, including its placeholder, uses the same 12-point system f
|
||||
|
||||
With no media open, the full window uses native behind-window HUD glass with a 35%-opaque brown tint. Static, cached amber/rust radial gradients add ambient color only to the empty screen; they disappear during loading or errors, and are never drawn over video or playback chrome. Glass title/control/error surfaces use the same brown tint with half-point sand outlines. Decorative drawing does not intercept input. The idle Metal surface stays attached but hidden; opening media restores a solid black background and letterboxing without tinting the video, and closing it restores the ambient frosted background. macOS controls the material’s appearance, including Reduce Transparency.
|
||||
|
||||
In normal mode, the captions selector sits immediately right of the compact-mode button and is disabled when no external subtitle tracks are available. Its native symbol uses a 16-point configuration within a 24-point click target. The native pull-down menu includes a visible Off option and prefers opening above the button; AppKit can reposition it to fit the screen. In compact mode, subtitle selection and Off are available through the settings button's Subtitles submenu; the compact cog uses a 21-point symbol to balance the adjacent icons. Subtitle lines can use the player width with 8-point outer side margins and 12-point internal padding. Their HUD-glass background uses 60% opacity without dimming the text. Visible compact controls raise subtitles by the actual compact control height plus spacing, rather than the normal controller's clearance. Subtitle-load errors remain visible independently of auto-hidden controls.
|
||||
In normal mode, the captions selector sits immediately right of the compact-mode button and is disabled when no external subtitle tracks are available. Its native symbol uses a 15-point configuration within a 24-point click target. The native pull-down menu includes a visible Off option and prefers opening above the button; AppKit can reposition it to fit the screen. In compact mode, subtitle selection and Off are available through the settings button's Subtitles submenu; the compact cog uses a 21-point symbol to balance the adjacent icons. Subtitle glass hugs the text and its 12-point internal padding, with the complete container capped at 80% of the window width; longer text wraps within that limit. Its HUD-glass background uses 60% opacity without dimming the text. Visible compact controls raise subtitles by the actual compact control height plus spacing, rather than the normal controller's clearance. Subtitle-load errors remain visible independently of auto-hidden controls.
|
||||
|
||||
Accepted relative seeks, including keyboard shortcuts, preserve control visibility instead of revealing hidden chrome. Seek failures still reveal the error; dragging the timeline continues to show the controls.
|
||||
|
||||
|
||||
@@ -1328,7 +1328,7 @@ private struct CaptionSelector: NSViewRepresentable {
|
||||
imageScaling = .scaleProportionallyUpOrDown
|
||||
(cell as? NSPopUpButtonCell)?.arrowPosition = .noArrow
|
||||
let symbol = NSImage(systemSymbolName: "captions.bubble", accessibilityDescription: "Subtitles")?
|
||||
.withSymbolConfiguration(.init(pointSize: 16, weight: .regular))
|
||||
.withSymbolConfiguration(.init(pointSize: 13, weight: .regular))
|
||||
captionItem.image = symbol
|
||||
contentTintColor = SunsetPalette.text
|
||||
toolTip = "Subtitles"
|
||||
@@ -1739,10 +1739,10 @@ private struct PlayerContent: View {
|
||||
.foregroundStyle(.white)
|
||||
.multilineTextAlignment(.center)
|
||||
.fixedSize(horizontal: false, vertical: true)
|
||||
.frame(maxWidth: .infinity)
|
||||
.padding(12)
|
||||
.background(PlayerGlass().opacity(0.6)
|
||||
.clipShape(RoundedRectangle(cornerRadius: 12)).allowsHitTesting(false))
|
||||
.frame(maxWidth: geometry.size.width * 0.8)
|
||||
.padding(.horizontal, 8)
|
||||
.padding(.bottom, model.controlsVisible
|
||||
? (model.isCompact ? compactControlHeight + 20 : 110)
|
||||
|
||||
Reference in New Issue
Block a user