New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 856692 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jul 10
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 1
Type: Bug



Sign in to add a comment

PPAPI keyboard input missing keyup events for modifier keys.

Project Member Reported by jamiewa...@chromium.org, Jun 26 2018

Issue description

Chrome 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.
 
Cc: noahc@google.com
I'm encountering this bug as well on chrome canary. As it stops all possibility of working (via CRD), could this be marked as a release blocking bug?
Owner: erikc...@chromium.org
Status: Assigned (was: Untriaged)
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
Labels: ReleaseBlock-Beta
Project Member

Comment 4 by bugdroid1@chromium.org, 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

Status: Fixed (was: Assigned)
Cc: vamshi.kommuri@chromium.org
Labels: TE-Verified-69.0.3488.0 TE-Verified-M69
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...!!



856692 CL Verification.mp4
567 KB View Download
When did this regress? Does it need to be merged?
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