When using third-party input methods on macOS, you may encounter a situation where you suddenly cannot type in your desired language. This is typically caused by macOS’s Secure Input feature being activated. When enabled, all keyboard software—except for the native macOS input source—is excluded from the input process, and special character functionalities cease to work.
Secure Input is a security feature that activates when you enter sensitive information (such as passwords) to prevent other applications from logging your keystrokes.
So, how can you resolve this issue without interrupting your work?
The Quickest Fix: Lock/Unlock or Sleep/Wake
The simplest and most effective solution in most cases is to lock and unlock your screen or put the machine to sleep and wake it up again. This is particularly effective when the issue is caused by the macOS login window (loginwindow
) itself.
- Press
Control + Command + Q
to return to the lock screen. - Log back in immediately using your password or Touch ID.
This action typically forces the system to reset the Secure Input state, effectively disabling it.
Finding and Terminating the Application Holding Secure Input
If the quick fixes above do not work, it is likely that a specific application is keeping Secure Input enabled. Only the application that activated it can turn it off. Common advice found online might suggest restarting the system, which can be inconvenient.
Fortunately, you can disable Secure Input without a reboot by identifying and addressing the responsible application.
You can use a Terminal command to find out which application is holding Secure Input in a stuck state. Open the Terminal app (found in /Applications/Utilities
) and run the following command:
ioreg -l -w 0 | awk '/kCGSSessionSecureInputPID/ {print $NF}' | xargs ps -o command= -p
Interpreting the command output:
- If the command returns a running application (e.g., KeePass), simply quit that application and relaunch it. The stuck Secure Input session will be released, and you can resume typing normally.
- If the command returns no result, it means that no application is currently holding Secure Input active.
- If the command returns
loginwindow
, this indicates a system process is the cause. In this scenario, the most effective solution remains locking the screen (Control + Command + Q
) and logging back in. If this fails, a system restart is the only remaining option.
Hopefully, this guide helps you resolve the issue with minimal disruption to your workflow.