Zwei Anzeigen für einen Handgriff sind eine zu viel
Apples eigene Einblendung lässt sich aushängen, ohne Root und ohne SIP anzufassen: `com.apple.OSDUIHelper` liegt in der GUI-Domäne des angemeldeten Benutzers, nicht im System. `launchctl bootout` dort hinein genügt. Standardmäßig aus, denn es verschwindet **jede** Einblendung — auch Helligkeit und Feststelltaste, und für die Feststelltaste hat Onyx keinen Ersatz. Beim Beenden wird wieder eingehängt: eine Einstellung darf nicht überleben, was sie eingestellt hat. Dazu zwei Fehler im Anlernen behoben. Der Posenname stand als roher Schlüssel da — die Zeichenketten liegen im Bündel von `FaceProvider`, gesucht wurden sie im Hauptbündel. Und „Gesicht vergleichen" blieb nach dem Anlernen grau, weil `isEnrolled` bei jedem Aufruf den Schlüsselbund las: richtig, aber für SwiftUI unsichtbar, weil es nichts gab, woran eine Ansicht die Änderung hätte bemerken können. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
fd29df51cf
commit
a3399d3a96
@@ -189,6 +189,11 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
|
||||
}
|
||||
// Ohne diese Zeile wäre der Schalter in den Einstellungen eine
|
||||
// Behauptung: gespeichert, aber ohne Wirkung.
|
||||
if model.suppressSystemOSD { SystemOSD.suppress() }
|
||||
model.onSuppressOSDChanged = { suppress in
|
||||
suppress ? SystemOSD.suppress() : SystemOSD.restore()
|
||||
}
|
||||
|
||||
lockController.usesFaceUnlock = model.faceUnlockEnabled
|
||||
model.onFaceUnlockChanged = { [weak self] uses in
|
||||
self?.lockController.usesFaceUnlock = uses
|
||||
@@ -309,6 +314,11 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
|
||||
}
|
||||
|
||||
func applicationWillTerminate(_ notification: Notification) {
|
||||
// Apples Einblendung wieder einhängen. Ohne das säße jemand bis zum
|
||||
// nächsten Abmelden ganz ohne Rückmeldung da — auch bei der Helligkeit,
|
||||
// mit der Onyx nichts zu tun hat — und wüsste nicht, warum. Eine
|
||||
// Einstellung darf nicht überleben, was sie eingestellt hat.
|
||||
if model?.suppressSystemOSD == true { SystemOSD.restore() }
|
||||
coordinator?.stop()
|
||||
menuBar?.stop()
|
||||
// Der Herzschlag endet damit. Der Helfer stellt die Lüfter binnen fünf
|
||||
@@ -650,6 +660,7 @@ final class AppDelegate: NSObject, NSApplicationDelegate {
|
||||
}
|
||||
|
||||
@objc private func quit() { NSApp.terminate(nil) }
|
||||
|
||||
}
|
||||
|
||||
/// Der Inhalt des Panels. Liest `model.layout` und zeichnet sich damit neu,
|
||||
|
||||
Reference in New Issue
Block a user