Reiterleiste liegt nicht mehr auf der Trennlinie

Sie saß genau auf der Kante unter dem Titelbalken. `TabView` in einem
gewöhnlichen Fenster bekommt den Abstand nicht von selbst — in Apples
`Settings`-Szene schon, und die benutzt Onyx bewusst nicht, weil sie über
einen privaten Selektor öffnet und bei Apps ohne Menüleiste unzuverlässig
ankommt.

Zwölf Punkte Abstand nach oben, und der Titelbalken geht durchsichtig in den
Inhalt über, statt ihn mit einer Linie abzuschneiden.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-08-13 13:53:35 +02:00
parent 784b210bc2
commit ab96086db7
2 changed files with 10 additions and 0 deletions

View File

@@ -46,6 +46,12 @@ struct SettingsView: View {
.tabItem { Label("settings.tab.permissions", systemImage: "hand.raised") } .tabItem { Label("settings.tab.permissions", systemImage: "hand.raised") }
.tag(SettingsTab.permissions) .tag(SettingsTab.permissions)
} }
// Abstand nach oben: ohne ihn sitzt die Reiterleiste genau auf der
// Trennlinie unter dem Titelbalken und sieht aus, als läge sie auf
// einer Kante. `TabView` in einem gewöhnlichen Fenster bekommt diesen
// Abstand nicht von selbst in Apples `Settings`-Szene schon, und die
// benutzt Onyx bewusst nicht.
.padding(.top, 12)
// Nur ein Mindestmaß, keine feste Größe: sonst kann das Fenster // Nur ein Mindestmaß, keine feste Größe: sonst kann das Fenster
// wachsen, der Inhalt aber nicht mit. // wachsen, der Inhalt aber nicht mit.
.frame(minWidth: 740, minHeight: 460) .frame(minWidth: 740, minHeight: 460)

View File

@@ -57,6 +57,10 @@ final class SettingsWindowController: NSObject, NSWindowDelegate {
let window = NSWindow(contentViewController: hosting) let window = NSWindow(contentViewController: hosting)
window.title = "Onyx" window.title = "Onyx"
// Der Titelbalken geht in den Inhalt über, statt ihn mit einer
// Linie abzuschneiden sonst liegt die Reiterleiste direkt auf
// dieser Linie.
window.titlebarAppearsTransparent = true
// Veränderbar, und das ist keine Kür: der Bereich Displays" mit // Veränderbar, und das ist keine Kür: der Bereich Displays" mit
// der Vorschau der Auslösefläche passt in 420 Punkte Höhe nicht // der Vorschau der Auslösefläche passt in 420 Punkte Höhe nicht
// mehr, und ein Fenster, in dem man scrollen muss, obwohl der // mehr, und ein Fenster, in dem man scrollen muss, obwohl der