mirror of
https://github.com/glfw/glfw.git
synced 2026-09-17 22:32:50 +00:00
606c0fc03e
Background: The IM will filter out key events, instead sending exact
duplicate events that are not filtered. It does not send these for
every event, however, so the duplicate events cannot be relied on for
key input. Instead we need to identify and discard them. Since they
are identical, they have the same timestamp as the originals.
The previous duplicate event detection would consume unrelated key
events if the keys were pressed simultaneously, as it only tracked
a single timestamp.
This fixes that issue for any combination of keys, at the expense of
a 1 KB array per GLFW window.
This fix is a stopgap until explicit IME support is done.
Based on #1472 by @LucaRood.
Fixes #1112.
Fixes #1415.
Fixes #1616.
Fixes #1663.
Closes #1472.
(cherry picked from commit 9a3664b4a9)