You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the weirdest issue I've experienced on Mac. I realize it's most likely a bug with the OS or Discord and not Keycastr, but I'm raising here for awareness and in case there are any additional checks or workarounds that can be done to resolve the issue.
I recently upgraded my machine and after setting up all streaming related applications, I was surprised to find that Keycastr no longer worked. My old machine was a 2017 Macbook Pro, while my new machine is a 2023 Macbook Pro w/M3 Pro chip.
From my initial setup, Keycastr would only capture modifier keys and no others. The default overlay would only show clicks/taps and no keys. The Svelte overlay would show modifier keys being pressed but no other keys.
I worked through all the troubleshooting and wiki guides to no avail. I attempted uninstalling and reinstalling Keycastr. I also reverted to older versions to see if there was maybe a newly introduced bug - nothing worked. I removed Keycastr from input monitoring between each trial. For each attempt, I downloaded the artifact from the GitHub Releases page and copied into Applications. Each time I reopened Keycastr was from Applications directly because using Spotlight would display Keycastr from Trash (which I deleted as well).
Viewing events via Console didn't display any errors from Keycastr, or any other errors aside from telemetry errors from various Apple apps due to my VPN.
Finally, I installed KeyLimePie via the App Store and found that it couldn't capture any keys.
This made me wonder if it was a conflict. The only other input monitoring app I have installed is Discord, which I didn't have installed on the older machine because I mainly use mobile Discord. I'm not sure why Discord requires input monitoring (maybe for voice chat), but I rarely use it so removed its input monitoring permissions. Removing Discord's permissions and reinstalling the binary didn't unblock Keycastr, but did unblock KeyLimePie. Removing Discord's permissions and re-installing Keycastr via Homebrew worked. After this, uninstalling Keycastr via Homebrew and installing the artifact manually also worked.
I realize a reproduction may be nearly impossible, so maybe a note on potential conflicts with other input monitoring in the readme would help. For example:
If issues persist after removing Keycastr permissions from Input Monitoring and re-installing, try toggling off all input monitoring applications. Then, ensure Keycastr is fully removed (e.g. Move to Trash then in Trash select Delete immediately). Install Keycastr, then enable input monitoring. Other input monitoring applications can then be re-enabled.
The text was updated successfully, but these errors were encountered:
Thank you for opening an issue and describing this scenario. Yes, there are cases where other applications can interfere with input monitoring. There is also secure input to consider, which you can enable and test out in Terminal.app. Notice that KeyCastr won't receive events while Terminal is in the foreground and other apps in the menu bar might not even receive mouse clicks. I don't know if Discord is also using secure input, but it's possible. It's all a bit of a mess from an app developer's perspective.
Glad you got to the bottom of the issue. My guess is that KeyCastr needed to register its accessibility API permissions while Discord wasn't monitoring input, but it's also possible that something else happened during the sequence you described or Discord was doing something additional with the input. Regardless, some adjustment to the troubleshooting steps is warranted; thank you for the suggestion.
By the way, with input monitoring enabled, Discord (or any app) is able to snoop on all of your typing in other applications unless secure entry is being used by that app. It's probably there for some global keyboard shortcuts; who knows. I would only enable it for apps I absolutely trust and from which I benefit from input monitoring, which isn't many.
This is the weirdest issue I've experienced on Mac. I realize it's most likely a bug with the OS or Discord and not Keycastr, but I'm raising here for awareness and in case there are any additional checks or workarounds that can be done to resolve the issue.
I recently upgraded my machine and after setting up all streaming related applications, I was surprised to find that Keycastr no longer worked. My old machine was a 2017 Macbook Pro, while my new machine is a 2023 Macbook Pro w/M3 Pro chip.
From my initial setup, Keycastr would only capture modifier keys and no others. The default overlay would only show clicks/taps and no keys. The Svelte overlay would show modifier keys being pressed but no other keys.
I worked through all the troubleshooting and wiki guides to no avail. I attempted uninstalling and reinstalling Keycastr. I also reverted to older versions to see if there was maybe a newly introduced bug - nothing worked. I removed Keycastr from input monitoring between each trial. For each attempt, I downloaded the artifact from the GitHub Releases page and copied into Applications. Each time I reopened Keycastr was from Applications directly because using Spotlight would display Keycastr from Trash (which I deleted as well).
Viewing events via Console didn't display any errors from Keycastr, or any other errors aside from telemetry errors from various Apple apps due to my VPN.
Finally, I installed KeyLimePie via the App Store and found that it couldn't capture any keys.
This made me wonder if it was a conflict. The only other input monitoring app I have installed is Discord, which I didn't have installed on the older machine because I mainly use mobile Discord. I'm not sure why Discord requires input monitoring (maybe for voice chat), but I rarely use it so removed its input monitoring permissions. Removing Discord's permissions and reinstalling the binary didn't unblock Keycastr, but did unblock KeyLimePie. Removing Discord's permissions and re-installing Keycastr via Homebrew worked. After this, uninstalling Keycastr via Homebrew and installing the artifact manually also worked.
I realize a reproduction may be nearly impossible, so maybe a note on potential conflicts with other input monitoring in the readme would help. For example:
The text was updated successfully, but these errors were encountered: