https://bugs.winehq.org/show_bug.cgi?id=57958
Bug ID: 57958 Summary: Caps lock issue when holding Caps lock with other key and Caps lock state was already on Product: Wine Version: 10.3 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winex11.drv Assignee: wine-bugs@winehq.org Reporter: daniel.gaba@protonmail.com Distribution: ---
Hello,
most of the time when holding Caps lock with another button game will register double click first on CAPS LOCK.
In "Arma 3" and in "Arma: Reforger" CapsLock is used as push to talk button for radio and you are often holding it alongside other buttons. How to reproduce: 1. Caps lock state need to be on. 2. Hold other key, for example W for walking forward 3. Hold CAPS LOCK 4. In Arma 3 it will start broadcasting for ms and stop and after 1s it will start broadcasting again. In Arma: Reforger this will toggle between Squad <-> Platoon radio instead because it detected double click on Caps Lock. Game will ignore you are still holding caps lock.
There is small chance that bug will not trigger. There is also possibility that game may mistakenly detect that you are still holding the Caps Lock key after releasing it, causing it to continue broadcasting until you press it again. I don't know how to reproduce this one. This is very common issue for Arma players on Linux.
OS: Opensuse Tumbleweed Kernel version: 6.13.6-1-default KDE plasma Version: 6.3.2 Wayland Wine 10.3 but issue also happens on Proton 7,8 and 9 I tested it also with wayland driver and I was not able to reproduce it.
http://bugs.winehq.org/show_bug.cgi?id=57958
--- Comment #1 from DanielGGGG daniel.gaba@protonmail.com --- Created attachment 79444 --> http://bugs.winehq.org/attachment.cgi?id=79444 Keyboard debug
I am not sure if this is usefull. Full debug output in attachment
I run notepad via wine 10.16 WINEDEBUG=+key,+keyboard ./wine notepad &>> /tmp/output2.log
1. Caps lock state is off 2. Press and hold W button 3. Press and hold Caps Lock button 4. Release Caps lock button 5. Release W button
On pressing CAPS LOCK generated input 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0000
And while releasing CAPS LOCK it generated 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0002
In this case there is no issue.
1. Caps lock state is on 2. Press and hold C button 3. Press and hold Caps Lock button 4. Release Caps lock button 5. Release C button
In this case on pressing caps lock it generated 1 input 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0000
and after few lines it generated 2 more caps lock inputs 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0002 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0000
and on Caps lock key release it generate Caps lock input X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0002
and after few lines it generate 2 more caps lock input 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0000 00f8:trace:key:X11DRV_send_keyboard_input hwnd 0x1006e vkey=0014 scan=003a flags=0002
This cause issue in games that have use CAPS LOCK button. I also saw simillar bug report where I also posted my findings. https://bugs.winehq.org/show_bug.cgi?id=58371