-
Notifications
You must be signed in to change notification settings - Fork 112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
xkeysnail captures all my input, but it doesn't work anywhere else #164
Comments
I got the same issue. |
I upgrade version from You can also try to upgrade the version: |
I'm having this same problem and it's driving me crazy. I'm using version 0.4.0 and I've had it installed for years with no problems. I've tried:
They all act the same: I'll run xkeysnail with its config file, and once it's running, it'll capture my input, but my keyboard will not work anymore. I can't even ctrl + C to kill it. How can I debug it? |
I have the exact same problem, here's the fix that worked for me. |
Wow, that worked. Can you explained why it works? I'm not really clear on it. Just in case it works for anyone else, I've been using keyd temporarily while I fixed this and it's working okay. Not as well as xkeysnail but it could probably get there without too much work. |
It seems that UInput init params with latest udev makes virtual device identified not as keyboard but as tablet, and events are ignored. More info: joshgoebel/keyszer#137 (comment) There are few ways to fix it. Removing events parameter makes device seen as keyboard by udev, because default events value is all keys (according to python-evdev doc). But then you may lose ability to bind axes and wheels events (EV_REL). But I guess people rarely use them in bindings. Other solution is to modify I can't propose proper patch though, because all these solutions may break some user configs or not work with different udev versions. |
From reading the systemd source I have no idea how this would change anything. You'd still have all the buttons registered and if you didn't remove the REL reference you'd have the relative events also - putting you squarely in the "touchpad" game again... or worse joystick - which is what we were trying to avoid with the "not all the buttons" hacks. If you're only using it to remap a keyboard ONLY then simply removing the EV_REL stuff from the constructor should cause no harm at all. |
I guess it is here: https://github.com/systemd/systemd/blob/877e68e7022c3f551d9f485f6791f2070c500aca/src/udev/udev-builtin-input_id.c#L261
Initially all these buttons are inside When all BTNs aren't removed from events, that |
Ah, right. I missed the the TOOL_PEN connection... |
xkeysnail captures all my input, but it doesn't work anywhere else, and it seems to be acting like my keyboard is not working
The text was updated successfully, but these errors were encountered: