GoHook, Go global keyboard and mouse listener hook
MIT License
314
stars
44
forks
source link
During a test where multiple keys are pressed and held down simultaneously, only the last key pressed continually triggers the hold event.Even under the above conditions, only up to 6 keys can be pressed simultaneously. #49
During a test where multiple keys are pressed and held down simultaneously, only the last key pressed continually triggers the hold event. Intuitively, if I am holding down multiple keys, each should be able to continually trigger its corresponding hold event.
Even under the above conditions, only up to 6 keys can be pressed simultaneously. (When I am holding down 6 keys and start pressing a 7th key or more, no further keyboard events can be detected.)
I am not sure if these two issues are due to my personal device setup:
Most standard keyboards (especially older or cheaper models) do indeed have limitations when multiple keys are pressed simultaneously. These limitations are commonly referred to as “Keyboard Ghosting” and “Key Rollover”.
Some keyboards can only detect the pressing of 2 or 3 keys at the same time, while more advanced keyboards may support 6-key rollover (6KRO) or full-key rollover (NKRO).
6-Key Rollover (6KRO):
Many keyboards, including some mechanical keyboards, support 6-key rollover. This means that they can detect the pressing of up to 6 keys simultaneously without any conflicts.
During a test where multiple keys are pressed and held down simultaneously, only the last key pressed continually triggers the hold event. Intuitively, if I am holding down multiple keys, each should be able to continually trigger its corresponding hold event.
Even under the above conditions, only up to 6 keys can be pressed simultaneously. (When I am holding down 6 keys and start pressing a 7th key or more, no further keyboard events can be detected.)
I am not sure if these two issues are due to my personal device setup:
Test system: Windows 10
Gohook version (or commit ref): last
Go version: go1.22.0
Gcc version: gcc-13.1.0/configure --host=x86_64-w64-mingw32
Operating system and bit: win10 and 64
Resolution: 1080p
Can you reproduce the bug at Examples:
Provide example code:
Description
...