New issue
Advanced search Search tips

Issue 836451 link

Starred by 2 users

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

mash: Most accelerators should be disabled in first-run tutorial

Project Member Reported by jamescook@chromium.org, Apr 24 2018

Issue description

In non-mash, when the first-run tutorial is running, most keyboard accelerators do not work. For example, Ctrl-N will not open a new window, Alt-Shift-S will not open system tray, etc. However, accelerators like screen brightness and volume still work.

With mash, most keyboard accelerators start working (or try to work). Ctrl-N will open a new browser window, though it is hidden. Alt-Shift-S will open the system tray.

I don't know how non-mash is suppressing the accelerators. There's no code in //ash accelerator handling that checks first-run state. Likewise the first-run app JavaScript isn't doing anything special with keyboard events. Somehow it's a side effect of the first-run widget being fullscreen, containing a web view, being focused, or some combination.

Mash must be treating accelerators differently (ash registering them up-front) that bypasses this code path.

alemate/afakhry, do you know off the top of your head how the first-run tutorial suppresses keyboard accelerators?

 
I don't know about the first run tutorial, but if you're saying it's a fullscreen app, then maybe it is consuming all shortcuts as expected (See: https://cs.chromium.org/chromium/src/ash/accelerators/accelerator_router.cc?type=cs&q=AcceleratorRouter::ShouldProcessAcceleratorNow&l=126) except 

- the reserved (power button),
- the search-based combos, 
- and the system keys: https://cs.chromium.org/chromium/src/ash/accelerators/accelerator_router.cc?type=cs&q=AcceleratorRouter::ShouldProcessAcceleratorNow&l=25
Cc: sadrul@chromium.org
Yeah, that sounds related. In both mash and non-mash that code in AcceleratorRouter is correctly noticing that the top-level window is fullscreen. It just seems like ash is ignoring ShouldProcessAcceleratorNow under mash.

Sadrul, does this sound familiar? Maybe related to how ash under mash registers accelerators up front?

Sign in to add a comment