mirror of
https://github.com/yattee/yattee.git
synced 2026-07-20 14:22:02 +00:00
Split macOS player mode into window toggle + floating control
Replace the three-way macOS Player Mode picker (Separate Window / Floating Window / Inline) with a single 'Play in a separate window' toggle in Playback settings, and move the always-on-top choice to a pin button in the player's top bar (window mode only). Floating was really a transient window property (NSWindow.level), not a peer of the window/inline structural choice — so it belongs on a live control, not in Settings. The pin state persists across sessions. - Replace MacPlayerMode enum with macPlayerSeparateWindow / macPlayerFloating bool settings - Branch runtime presentation and window level off the two bools - Add pin.fill/pin toggle to MacOSPlayerControlsView top bar - Update localization; drop obsolete playerMode strings and enum tests
This commit is contained in:
@@ -45,7 +45,8 @@ enum SettingsKey: String, CaseIterable {
|
||||
case resolveShortLinksEnabled
|
||||
|
||||
// Platform-specific
|
||||
case macPlayerMode
|
||||
case macPlayerSeparateWindow
|
||||
case macPlayerFloating
|
||||
case playerSheetAutoResize
|
||||
case listStyle
|
||||
|
||||
@@ -136,7 +137,8 @@ enum SettingsKey: String, CaseIterable {
|
||||
/// in both UserDefaults and iCloud, so each platform family syncs independently.
|
||||
var isPlatformSpecific: Bool {
|
||||
switch self {
|
||||
case .preferredQuality, .cellularQuality, .allowSoftwareDecodedFormats, .macPlayerMode, .listStyle,
|
||||
case .preferredQuality, .cellularQuality, .allowSoftwareDecodedFormats,
|
||||
.macPlayerSeparateWindow, .macPlayerFloating, .listStyle,
|
||||
// Home layout — different UI paradigms per platform
|
||||
.homeShortcutOrder, .homeShortcutVisibility, .homeShortcutLayout, .homeShortcutCardStyle,
|
||||
.homeShortcutColorfulPalette, .homeShortcutCustomPaletteColors,
|
||||
|
||||
Reference in New Issue
Block a user