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:
Scarriffle
2026-09-05 22:26:41 +02:00
co-authored by Claude Opus 5
parent fd29df51cf
commit a3399d3a96
9 changed files with 221 additions and 8 deletions
@@ -16,11 +16,14 @@ public final class FaceEnrollment {
public enum Pose: String, CaseIterable, Sendable {
case straight, left, right
public var localizedName: LocalizedStringKey {
/// Aufgelöst **hier** und nicht als Schlüssel weitergereicht: die
/// Zeichenketten liegen im Bündel dieses Moduls, und wer sie anderswo
/// nachschlägt, bekommt den Schlüssel selbst zu sehen.
public var localizedName: String {
switch self {
case .straight: "face.pose.straight"
case .left: "face.pose.left"
case .right: "face.pose.right"
case .straight: String(localized: "face.pose.straight", bundle: .module)
case .left: String(localized: "face.pose.left", bundle: .module)
case .right: String(localized: "face.pose.right", bundle: .module)
}
}
}