Alt + Tab won't be able to send to fullscreen browser window |
||
Issue descriptionChrome Version: 61.0.3159.8 (Official Build) dev (64-bit) OS: ChromeOS What steps will reproduce the problem? (1) Open a new browser window and fullscreen a tab by either F11 or Element.webkitRequestFullscreen(). (2) Open web page to preventDefault() all keydown events. For example, https://cs.chromium.org/chromium/src/chrome/test/data/fullscreen_keyboardlock.html?q=fullscreen_keyboard&sq=package:chromium&l=1 or http://unixpapa.com/js/testkey.html. (3) Press Alt+Tab or Shift+Alt+Tab What is the expected result? Alt+Tab can be captured by web page. What happens instead? The web page cannot receive the key events. Note, fullscreen app window can receive these events. Two suspicious lines, - Shell::GetAllRootWindows(), https://cs.chromium.org/chromium/src/ash/accelerators/accelerator_router.cc?rcl=95934a8a6c05e3702fdfa08bd81243516817f0ac&l=107 Is the browser window always the root window? - wm::GetWindowState(top_level)->IsFullscreen() https://cs.chromium.org/chromium/src/ash/accelerators/accelerator_router.cc?rcl=95934a8a6c05e3702fdfa08bd81243516817f0ac&l=119 Can wm return the correct state of a browser window?
,
Jul 27 2017
This is a false-alarm. Mitsuru Oshima (oshima@) pointed out that the browser window actively rejects the Alt-Tab from being handled by web page. The original mail thread is, Ash does send alt-tab to fullscreen *window*, so the documentation is correct. It's up to the client (in this case, app window, browser window etc) implementation what to do with these keys. Whether or not these clients send to web contents is outside of the ash control and different question. Browser sends alt-tab if it's V1 app. I believe we did this for CRD because old CRD was v1 app before. Please see: https://cs.chromium.org/chromium/src/chrome/browser/ui/views/frame/browser_view.cc?rcl=a3cf4d27ce27706c9cb253216a98f0bafd20096e&l=1299 |
||
►
Sign in to add a comment |
||
Comment 1 by jamescook@chromium.org
, Jul 27 2017