Skip to content
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

Event::KeyDown reports incorrect repeat value after holding multiple keys at specific order #1080

Closed
azymohliad opened this issue Jul 4, 2020 · 1 comment · Fixed by #1081
Labels
bug does not behave the way it is supposed to shell/gtk concerns the GTK backend

Comments

@azymohliad
Copy link

azymohliad commented Jul 4, 2020

Steps to reproduce:

  1. Press & hold any key A (except modifiers)
  2. Press & hold any other key B (except modifiers)
  3. Release key A
  4. Wait for repeat timeout while holding key B

It will report Event::KeyDown for key B with KeyEvent::repeat = false for one time.

I am using GTK backend, haven't tested on others.

Druid version: commit 64eb47c (latest master when reporting)

@azymohliad azymohliad changed the title Event::KeyDown reports wrong repeat value after holding multiple keys Event::KeyDown reports incorrect repeat value after holding multiple keys at specific order Jul 4, 2020
@azymohliad
Copy link
Author

Just tested with old (pre-#1049) KeyEvent, it's the same. So it's not a regression.

@luleyleo luleyleo added bug does not behave the way it is supposed to shell/gtk concerns the GTK backend labels Jul 4, 2020
raphlinus added a commit that referenced this issue Jul 4, 2020
Keep track of which keys are pressed and use that to determine whether
a key is a repeat. The previous logic of comparing the keyval to the
last value fails in the case of multiple keys.

Also add lock modifiers, a followup from #1079.

Fixes #1080
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug does not behave the way it is supposed to shell/gtk concerns the GTK backend
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants