On Thu, Jun 16, 2022 at 4:07 PM Nick Couchman <nick.e.couch...@gmail.com> wrote:
> Hello, everyone, > I've posted a couple of times out this in various places, but I'm seeing > some really odd behavior after version 1.4.0 for Ctrl-Shift-Alt sequences. > I've used the Keyboard API tester, and I'm seeing a few oddities, there, as > well. I will try to describe them as best I can, though it's a little hard > to describe... > > First, I see an issue where, during the Ctrl-Shift-Alt keypress sequence, > the Alt key-down doesn't get sent until another key is released. Here's the > sequence that I press: > > * Press Control > * Press Shift > * Press Alt > * Release Control > * Release Shift > * Release Alt > > Here is how the actual timing works out on the Keyboard API Test page: > * Press Control > guacamole keydown 0xffe3 Left control > * Press Shift > guacamole keydown 0xffe1 Left shift > * Press Alt > * Release Control > guacamole keyup 0xffe3 Left control > guacamole keydown 0xffe9 Left alt > * Release Shift > guacamole keyup 0xffe1 Left shift > guacamole keyup 0xffe9 Left alt > * Release Alt > > Two things jump out, here: > * The "Alt" keydown doesn't get sent until the "Control" key is release. > * Both the "Shift" and "Alt" keyup events occur as soon as "Shift" is > released - while "Alt" is still pressed. > > The second interesting one is this: > * Press Control > * Press Shift > * Press Alt > * Release Alt > * Release Shift > * Release Control > > This results in the following sequence: > * Press Control > guacamole keydown 0xffe3 Left control > * Press Shift > guacamole keydown 0xffe1 Left shift > * Press Alt > * Release Alt > guacamole keydown 0xffe9 Left alt > guacamole keydown 0xffe7 Left meta > guacamole keyup 0xffe7 Left meta > guacamole keyup 0xffe9 Left alt > * Release Shift > guacamole keyup 0xffe1 Left shift > * Release Control > guacamole keyup 0xffe3 Left control > > The items of note, here, are that: > * The Alt keydown is not sent until Alt is actually released. > * The Meta keydown is sent along with the Alt keydown, which is completely > unintended. > > Just another note, here - the issue does not seem to be related to the Control key - it's something about the Shift key. If I do the key sequence: * Press Shift * Press Alt * Release Alt * Release Shift I see: * Press Shift guacamole keydown 0xffe1 Left shift * Press Alt * Release Alt guacamole keydown 0xffe9 Left alt guacamole keydown 0xffe7 Left meta guacamole keyup 0xffe7 Left meta guacamole keyup 0xffe9 Left alt * Release Shift guacamole keyup 0xffe1 Left shift Additionally, if I use the Alt key on its own, or with other keys (letters, for example), it works fine. And, if I press, Alt, first, and then Shift, the keydown/keyup also works as expected. It is something about the Shift -> Alt sequence. -Nick >