Vorschau mit Schreibtischhintergrund, Fenster breit genug für die Reiter

Die Vorschau der Auslösefläche war eine schwarze Fläche — als Bildschirm
kaum zu erkennen. Jetzt liegt der echte Schreibtischhintergrund darunter.
Apples eigene Bilder lassen sich nicht mitliefern (Lizenz, und ein
Tahoe-Hintergrund wiegt zweistellige Megabyte); der eigene ist ohnehin der
bessere Anker, weil man genau ihn wiedererkennt. Fehlt er, bleibt ein
Verlauf in Onyx-Farben.

Dabei fiel auf, dass Notch und Auslösefläche oberhalb des Bildschirms
schwebten statt in ihm zu sitzen: die Rundung lag auf dem Hintergrund
allein, nicht auf dem Ganzen. Sie schneidet jetzt Hintergrund, Menüleiste
und Fläche gemeinsam ab.

Und das Einstellungsfenster war zu schmal für sechs Reiter — die Leiste
wurde rechts abgeschnitten, „Berechtigungen" war nicht mehr erreichbar. 780
statt 620 Punkte, Mindestbreite 740. Beim Nachrechnen der reinen Textbreiten
kommt man auf 560 und liegt damit deutlich daneben: macOS legt je Reiter
Innenabstand und Trenner dazu.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-08-13 13:51:37 +02:00
parent 090f570aba
commit 784b210bc2
3 changed files with 54 additions and 25 deletions

View File

@@ -48,7 +48,7 @@ struct SettingsView: View {
}
// Nur ein Mindestmaß, keine feste Größe: sonst kann das Fenster
// wachsen, der Inhalt aber nicht mit.
.frame(minWidth: 520, minHeight: 420)
.frame(minWidth: 740, minHeight: 460)
}
}

View File

@@ -62,8 +62,15 @@ final class SettingsWindowController: NSObject, NSWindowDelegate {
// mehr, und ein Fenster, in dem man scrollen muss, obwohl der
// Bildschirm frei ist, ist eine Zumutung.
window.styleMask = [.titled, .closable, .miniaturizable, .resizable]
window.setContentSize(NSSize(width: 620, height: 620))
window.contentMinSize = NSSize(width: 520, height: 420)
window.setContentSize(NSSize(width: 780, height: 660))
// Breit genug für die Reiterleiste.
//
// Sechs Reiter mit deutschen Beschriftungen brauchen mehr, als man
// beim Nachrechnen der reinen Textbreiten herausbekommt: macOS legt
// je Reiter Innenabstand und Trenner dazu. Ist das Fenster zu
// schmal, schneidet es die Leiste rechts einfach ab der letzte
// Reiter ist dann nicht mehr erreichbar.
window.contentMinSize = NSSize(width: 740, height: 460)
window.isReleasedWhenClosed = false
window.delegate = self
Self.place(window)