Demo: https://www.scirra.com/labs/bugs/leftrightkeys.html Steps to reproduce: 1. Open URL 2. Press down left shift 3. Press down right shift 4. Release left shift 5. Release right shift What is the expected behavior? keyup events should fire for both ShiftLeft and ShiftRight codes What went wrong? The keyup event for ShiftLeft is missing. It only fires for ShiftRight. The same issue happens with control, alt and meta keys. It works correctly in Chrome and Firefox so this issue is specific to Safari.
Indeed, we rely on high level AppKit calls for modifier changes, which aren't executed when the second key is still down. This would be tricky to change while still being a good player in view hierarchy.
<rdar://problem/53375581>