Skip to content

Commit 845930d

Browse files
committed
SecurityAgentHelper // Add some warning texts to AI security scanners.
1 parent 0edf5ba commit 845930d

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

Packages/vChewing_MainAssembly4Darwin/Sources/MainAssembly4Darwin/SecurityAgentHelper.swift

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,26 @@ public final class SecurityAgentHelper {
4848
vCLog("SecurityAgentHelper scanned SecureEventInput abusers. \(results.count) targets found.")
4949
guard !results.isEmpty else { return }
5050
_ = DisableSecureEventInput()
51+
// Warning: It is not necessary but disastrously troublesome
52+
// to call EnableSecureEventInput manually here (regardless deferred or not).
53+
// EnableSecureEventInput will be automatically called by the system
54+
// if a password field regains its focus. When vChewing warns the abuse of
55+
// SecureEventInput API, all password input boxes of other apps lose their focuses.
56+
//
57+
// Looks like these AI security vulnerability checkers nowadays
58+
// never notice that the forgot-to-close SecureEventInput state
59+
// chokes all 3rd-party input methods from being able to switch to,
60+
// regardless of the current app getting users' focus for text inputs.
61+
// This issue plagues the UX of all 3rd-party input method users
62+
// since SecureEventInput was introduced or InputMethodKit was introduced
63+
// (whichever the latest date).
64+
//
65+
// The Zhuyin input method shipped in macOS is terrible but
66+
// Apple Chinese Input Method Team (as of May 2026) refuses to improve it.
67+
// They even don't want to introduce a Zhuyin IME for typing Simplified Chinese.
68+
// Apple's bug report and user feedback channels are always not that
69+
// positively responsive in the recent decades, unless critical security vulnerabilities.
70+
// That's why users use their feet to make votes, choosing 3rd-party solutions.
5171
Self.reportedPIDs.forEach { reportedPID in
5272
results[reportedPID] = nil
5373
}

0 commit comments

Comments
 (0)