-
Notifications
You must be signed in to change notification settings - Fork 403
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
lock circumvented (broken) when issuing setxkbmp and xkbcomp and fast typing #351
Comments
Can you also provide the output of i3lock --debug with/without the XKB change from your system please? Be sure to redact the password from the output before sharing. |
Attached. In all cases, "[some random character typed]" refers to characters that I was typing randomly as per step 4. in the bug report. When i3lock breaks: When no XKB change and i3lock does not break Edit
|
Can you check if pull request #353 fixes the issue for you? Thanks. |
Yes, it does fix the issue for me. (I still see the "[i3lock] xkb_x11_keymap_new_from_device failed", but it does not unlock). |
Great, thanks for confirming. I merged the immediate fix for now. Can you clarify if the Can you file a separate bug for what needs to be fixed please? |
I've only noticed
When I issue I am not sure what you are asking, though. If it is about what happens immediately after resume, I cannot tell. My monitor always has a lag after resuming/starting, so for the first few seconds after I press the start key (resume) and when I start typing, I cannot tell what is going on on the monitor as nothing is being visibly displayed.
I don't know of an additional bug that needs to be fixed. Is this the I think I am not following you. |
Ok, I looked into this some more and I think I understand now. To reproduce the problem, I found it sufficient to run keym.sh repeatedly, no suspend needed. Looking at the X11-level trace, I think the problem is that i3lock gets a notification about the changed keymap, but while fetching the keymap details, the keymap changes again (due to the second command in keym.sh), which results in an X11 error. So, to answer my own question: these are spurious errors, not persistent errors somehow related to the keymap. No further fixes needed. BTW: I also triggered a crash in gnome-shell while reproducing the problem:
Feel free to reproduce/report it if you feel adventurous :) |
Ah, great. Issue solved then. Thanks.
I think I am not feeling that adeventurous ;-) And I think I've never used gnome-shell so this would be way too adventurous for me. |
I'm submitting a…
Current Behavior
When resuming from suspend, and if I also alter the keyboard map on resume, if I type quickly (say, both hands, several keypresses per second), the lock is broken.
I use i3lock with
xss-lock
as follows:If I type much more slowly or nothing at all, generally the lock is not broken.
Expected Behavior
The lock is not broken when resuming from sleep, regardless of typing.
As a comparison, some other lockers do not show this behavior. I've tested it with xtrlock, slock, and xsecurelock (all launched as i3lock) and xscreen-saver (launched as
xss-lock -- xscreensaver-command --lock &
), and none of them I could break this way.Reproduction Instructions
I only see this happen with an automatic monitor configuration setup I have, that chooses the right monitor on resume. But the monitor configuration per se is irrelevant; the crucial feature is a combination of
setxkbmap
andxkbcomp
.I can reproduce the problem with this minimal setup.
kbd-config
in/usr/lib/systemd/system-sleep/
.kbd-config
isWhere
keym.sh
is(I do not think the actual XKB keymap matters much. I've used a couple of different ones with success. Attaching one: some-xkb-dump.txt. I do not think that that the layout is set to 'es' matters either, nor the ctrl:nocaps option).
From the command line issue
systemctl suspend
. The screen locks and then the computer suspends.Once the computer is suspended, press the button to resume and type very quickly. The screen gets unlocked.
If you issued 1. from a terminal that you still have opened, you will probably see this too
Environment
Output of
i3lock --version
:The text was updated successfully, but these errors were encountered: