PPAPI keyboard input missing keyup events for modifier keys. |
|||||
Issue descriptionChrome Version: 69.0.3468.2 OS: macOS What steps will reproduce the problem? (1) Install and run https://chrome.google.com/webstore/detail/chrome-key-event-tester/amndppkiecbdmiaihgbicalhabkkhhpk (you can find the source code for this app at https://cs.chromium.org/chromium/src/remoting/tools/javascript_key_tester/ if you need it for reference). (2) Type Cmd+C What is the expected result? The app should log a +MetaLeft +KeyC -MetaLeft, indicating that a keydown event was received for Cmd and C, then a keyup event was received for Cmd. Note that it is expected that no keyup event is received for C--this is a quirk of macOS. What happens instead? No keyup event is received for either event. The app is now in a state where no modifier keys are received at all until a non-modifier key is pressed and release. This is a regression--the problem is not seen in Chrome 67.0.3396.99. It has particularly severe consequences for Chrome Remote Desktop, which uses the same Pepper APIs for keyboard input. Note that the bug is specific to PPAPI. It does not repro using the JavaScript APIs at http://w3c.github.io/uievents/tools/key-event-viewer.html.
,
Jul 9
This is likely caused by a recent change I made, see: https://cs.chromium.org/chromium/src/ui/base/cocoa/command_dispatcher.mm?sq=package:chromium&g=0&l=254
,
Jul 9
,
Jul 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f2eac7a5a934f5d5da43195ce45469cb309c8a31 commit f2eac7a5a934f5d5da43195ce45469cb309c8a31 Author: erikchen <erikchen@chromium.org> Date: Tue Jul 10 17:23:31 2018 CommandDispatcher should not suppress key-up events. There are some PPAPI consumers [e.g. chrome remote desktop] that expect to receive key-up events even if a hotkey was consumed. Bug: 856692 Change-Id: I8c70709344cfd412d77f8c6ea6d820886b4775ad Reviewed-on: https://chromium-review.googlesource.com/1129679 Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Erik Chen <erikchen@chromium.org> Cr-Commit-Position: refs/heads/master@{#573788} [modify] https://crrev.com/f2eac7a5a934f5d5da43195ce45469cb309c8a31/ui/base/cocoa/command_dispatcher.mm
,
Jul 10
,
Jul 11
Verified the fix on Mac 10.13.1 using Chrome version #68.0.3488.0 as per the comment #0. Attaching screen cast for reference. Observed that app logged +MetaLeft +KeyC -MetaLeft events Hence, the fix is working as expected. Adding the verified labels. Note: Able to reproduce the issue on chrome version 69.0.3468.2 Thanks...!!
,
Jul 12
When did this regress? Does it need to be merged?
,
Jul 12
Regressed June 8: https://chromium-review.googlesource.com/1082818. 68 branched at 561733, this CL was 565490, so we should be good. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by noahc@google.com
, Jul 9