Consider lifting keys before wl_keyboard.leave or after enter
- Focus a client
- Press a key
- Focus another client
- Release the key
The first client still has a state with the key pressed: it receives wl_keyboard.enter
, wl_keyboard.key(PRESSED)
, then wl_keyboard.leave
and misses the wl_keyboard.key(RELEASED)
that is sent to the other client.
Since there's only one keyboard focus at a time, we should probably send wl_keyboard.key(RELEASED)
for all pressed keys right before wl_keyboard.leave
.