zenangst / KeyboardCowboy

:keyboard: The missing keyboard shortcut utility for macOS
Other
761 stars 14 forks source link

Right side command shortcuts stop working at random #555

Open renews opened 3 months ago

renews commented 3 months ago

I launch all my apps with right cmd + something. But from time to time the right side command starts behaving as a left side one with conflicts with a lot of apps and I guess because of that the shortcuts don't work.

Here are some of mine

  1. CMD+1
  2. CMD+2
  3. CMD+3
  4. CMD+4
  5. CMD+t
  6. CMD+l
  7. CMD+u
  8. CMD+m
  9. CMD+c
  10. CMD+z

this is the only reason I used keyboard cowboy =} is there something that changed? Do I need to do something now for this to work again? Being using this kind of keybinds for half a year without issues until last week or so.

zenangst commented 2 months ago

@renews hey, thanks for bringing this to my attention. We haven't made a release in a while so nothing should have changed. This is just regular application commands that stop working? Is it on the built-in keyboard or an external one? The only thing that I could think of that could potentially cause this (take it with a grain of salt) would be an event source timeout. When that happens, it could lead to the initial event hitting the app instead of the one that you intended to invoke. I'm gonna monitor this issue myself because I haven't seen it on my machine.

Any particular cases where this happens more often than others? Like when it tries to launch an application that takes time to launch etc. Any clues would be helpful for further investigation.

Thanks again for bringing this to my attention.

renews commented 2 months ago

Thank for pinging me, I forgot to update here, what happens I think is sometimes when a wireless keyboard resets the connection, the application stop receiving the correct key codes for some reason, using the same shortcut directly on the default keyboard solves the issue, until it happens again. @zenangst

zenangst commented 2 months ago

@renews I just experience this myself but I have no idea how to reproduce it properly. But it does seem like it was caused by a timeout in the mach port. If that happens, it will reset itself. However, I'll need to do some further digging to figure out what is causing the timeout to begin with. I experience this using the built-in keyboard.

Any additional details that you could share to make it easier to narrow down and get it fixed? Like, which kind of commands are you running?

zenangst commented 2 months ago

@renews Did some deep-dive into the issue. I found some performance improvements that could potentially be causing the timeout. I'm gonna take it for a spin locally for a couple a days... then I should really get a new version out, it has been a while.

Thanks for your patience 🫶

renews commented 2 months ago

Awesome that you found something out! As requested this are some of the shortcuts. CleanShot 2024-08-29 at 21 14 08@2x

zenangst commented 2 months ago

@renews awesome thanks. You know if any of these apps have a longer startup time than others. The thing that I found is that the mach port listener (keyboard input) was waiting for the execution of the task before returning. Which would mean that the entire workflow would have to run before the mach port returned the event.

A bit of a whoopsie daisy on my part. Did some optimizations with regards to repeated commands (such as key rebinding).

So far, everything seems good and dandy. Gonna try it out some more at work today. Should be able to ship soon, just need to finish up some of the new features that are macOS Sequoia specific (window tiling).

renews commented 2 months ago

Tbh @zenangst I never paid attention to which one of the apps I was trying to open or switch to, most probably would be Wezterm and Brave. Yesterday had the issue again, even with the MacBook keyboard, same as you I guess :(

zenangst commented 2 months ago

Yeah, thus far I haven't experience this issue... so the fix might be working as intended. With that said, I've only experienced it once (that I know of).

Thanks for following up!

zenangst commented 5 days ago

@renews I just released version 3.25.0, could you take that for a spin to see if that doesn't resolve the issue?

https://github.com/zenangst/KeyboardCowboy/releases/tag/3.25.0

renews commented 4 days ago

Hell yeah I will do that