m1k1o commented on PR #735:
URL: https://github.com/apache/guacamole-client/pull/735#issuecomment-1158066466
@mike-jumper the problem we are trying to solve are different key codes with
and without `SHIFT` modifier.
Lets say we have `1` key that sends code `x` when no modifier is pressed and
`y` when `SHIFT` is pressed. Under normal circumstances it would be like:
1. Press `SHIFT`
2. Press `1` -> sends keydown `x`.
3. Release `1` -> sends keyup `x`.
4. Release `SHIFT`
But when we do it in a different order, there is a race condition. There are
two posibilities:
1. Press `SHIFT`
2. Press `1` -> sends keydown `x`.
3. Release `SHIFT`
4. Release `1` -> sends keyup `x`.
This is expected behavior, however when doing this relatively slowly we can
end up with following state:
1. Press `SHIFT`
2. Press `1` -> sends keydown `x`.
3. Release `SHIFT`
4. Release `1` -> sends keydown + keyup `y`.
This means, that there is no sent keyup for `x`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]