Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(653)

Issue 59043013: Add flag to enable immersive fullscreen for v2 apps (Closed)

Created:
7 years, 1 month ago by pkotwicz
Modified:
7 years, 1 month ago
Reviewers:
benwells, oshima
CC:
chromium-reviews, sadrul, tfarina, chromium-apps-reviews_chromium.org, kalyank, ben+views_chromium.org, ben+ash_chromium.org
Visibility:
Public.

Description

Add ash-enable-immersive-all-windows command line flag to enable immersive fullscreen for non-frameless v2 apps. (The goal is to add support for immersive fullscreen for v1 apps and miscellaneous windows such as the task manager shortly) When the flag is set, <F4> will put the app into immersive fullscreen. In immersive fullscreen, the window header (the title bar and window controls) slide out as an overlay over the web contents when the mouse is hovered at the top of the display. chrome.app.window.current().isFullscreen() returns false for immersive fullscreen windows Entering fullscreen via the app.window api or webkitRequestFullScreen() quits immersive fullscreen. BUG=307622 R=oshima,benwells TBR=sky (For adding VIEWS_EXPORT to ui/views/widget/widget_observer.h) TEST=Manual, see steps below: 1) Install: https://chrome.google.com/webstore/detail/window-state-sample/hcbhfbnaaancmblfhdknlnojpafjohbi 2) Enable "Enable immersive fullscreen for non browser windows" in chrome://flags 3) Hit <F4> 4) Ensure that the "isFullscreen" checkbox in the app is checked 5) Ensure that the shelf light bar is visible (The shelf is not completely hidden) 6) Hover the mouse at the top of the screen. Ensure that the window header (maximize and close button slide down and overlay the web contents) 7) Move the mouse off of the header. Ensure that the window header slides off screen 8) Press the Fullscreen button in the app (It may be useful to set the "chrome.app.window actions delay" to zero seconds) 9) Ensure that the shelf is completely hidden. 10) Hover the mouse at the top of the screen. Ensure that the header slides out again. 11) Press <F4> 12) Ensure that the "isFullscreen" checkbox is unchecked 13) Ensure that the window header is visible and does not slide out Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=235861

Patch Set 1 : #

Total comments: 22

Patch Set 2 : #

Patch Set 3 : #

Total comments: 12

Patch Set 4 : #

Total comments: 1

Patch Set 5 : #

Total comments: 8

Patch Set 6 : #

Total comments: 4

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : Fix interactive_ui_tests #

Patch Set 10 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+541 lines, -117 lines) Patch
M apps/shell_window.h View 1 2 3 4 5 3 chunks +20 lines, -4 lines 0 comments Download
M apps/shell_window.cc View 1 2 3 4 5 6 7 8 9 4 chunks +22 lines, -16 lines 0 comments Download
M apps/ui/native_app_window.h View 1 2 3 4 5 1 chunk +5 lines, -2 lines 0 comments Download
M ash/ash.gyp View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M ash/ash_switches.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M ash/ash_switches.cc View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -0 lines 0 comments Download
M ash/wm/caption_buttons/frame_caption_button_container_view.h View 1 2 3 4 5 2 chunks +5 lines, -0 lines 0 comments Download
M ash/wm/caption_buttons/frame_caption_button_container_view.cc View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M ash/wm/caption_buttons/frame_maximize_button.h View 5 chunks +10 lines, -0 lines 0 comments Download
M ash/wm/caption_buttons/frame_maximize_button.cc View 3 chunks +16 lines, -0 lines 0 comments Download
A ash/wm/caption_buttons/frame_maximize_button_observer.h View 1 2 3 1 chunk +26 lines, -0 lines 0 comments Download
M ash/wm/caption_buttons/maximize_bubble_controller.cc View 1 chunk +3 lines, -1 line 0 comments Download
M ash/wm/custom_frame_view_ash.h View 1 2 3 4 4 chunks +21 lines, -11 lines 0 comments Download
M ash/wm/custom_frame_view_ash.cc View 1 2 3 4 5 6 7 8 7 chunks +280 lines, -55 lines 0 comments Download
M ash/wm/immersive_fullscreen_controller.h View 1 chunk +1 line, -1 line 0 comments Download
M ash/wm/immersive_fullscreen_controller_unittest.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M ash/wm/window_state_delegate.h View 1 2 1 chunk +6 lines, -3 lines 0 comments Download
M chrome/app/generated_resources.grd View 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/about_flags.cc View 1 2 3 4 5 6 7 8 1 chunk +7 lines, -0 lines 0 comments Download
M chrome/browser/ui/cocoa/apps/native_app_window_cocoa.h View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/ui/gtk/apps/native_app_window_gtk.h View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/gtk/apps/native_app_window_gtk.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/browser/ui/views/apps/native_app_window_views.h View 1 2 3 4 5 3 chunks +17 lines, -2 lines 0 comments Download
M chrome/browser/ui/views/apps/native_app_window_views.cc View 1 2 3 4 5 6 7 8 9 6 chunks +72 lines, -13 lines 0 comments Download
M chrome/browser/ui/views/frame/immersive_mode_controller_ash.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/views/frame/immersive_mode_controller_ash.cc View 1 chunk +1 line, -1 line 0 comments Download
M ui/views/widget/widget_deletion_observer.h View 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 31 (0 generated)
pkotwicz
oshima@, can you please take a look? Can you take a preliminary look at the ...
7 years, 1 month ago (2013-11-07 06:21:36 UTC) #1
oshima
https://codereview.chromium.org/59043013/diff/30001/apps/shell_window.h File apps/shell_window.h (right): https://codereview.chromium.org/59043013/diff/30001/apps/shell_window.h#newcode109 apps/shell_window.h:109: FULLSCREEN_TYPE_IMMERSIVE, Can you explain in the comment how other ...
7 years, 1 month ago (2013-11-07 18:56:12 UTC) #2
pkotwicz
Oshima, can you please take another look? https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc File ash/ash_switches.cc (right): https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc#newcode99 ash/ash_switches.cc:99: "ash-enable-app-immersive-fullscreen"; It ...
7 years, 1 month ago (2013-11-07 22:21:48 UTC) #3
oshima
https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc File ash/ash_switches.cc (right): https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc#newcode99 ash/ash_switches.cc:99: "ash-enable-app-immersive-fullscreen"; On 2013/11/07 22:21:48, pkotwicz wrote: > It should ...
7 years, 1 month ago (2013-11-08 00:26:29 UTC) #4
pkotwicz
https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc File ash/ash_switches.cc (right): https://codereview.chromium.org/59043013/diff/30001/ash/ash_switches.cc#newcode99 ash/ash_switches.cc:99: "ash-enable-app-immersive-fullscreen"; I do not think that we want to ...
7 years, 1 month ago (2013-11-08 01:16:56 UTC) #5
oshima
Regaring EnterImmersiveFullscreen vs EnterFullscreen, I read through the code again and here are my thoughts. ...
7 years, 1 month ago (2013-11-08 18:22:29 UTC) #6
oshima
On 2013/11/08 18:22:29, oshima wrote: > Regaring EnterImmersiveFullscreen vs EnterFullscreen, I read through the code ...
7 years, 1 month ago (2013-11-08 18:23:15 UTC) #7
James Cook
On 2013/11/08 18:23:15, oshima wrote: > On 2013/11/08 18:22:29, oshima wrote: > > Regaring EnterImmersiveFullscreen ...
7 years, 1 month ago (2013-11-08 20:58:16 UTC) #8
pkotwicz
ash::wm::WindowStateDelegate::ToggleFullscreen() is back. Oshima can you please take another look?
7 years, 1 month ago (2013-11-08 22:36:10 UTC) #9
oshima
https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h File ash/ash_switches.h (right): https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h#newcode46 ash/ash_switches.h:46: ASH_EXPORT extern const char kAshEnableAppImmersiveFullscreen[]; chrome/common/chrome_switches? https://codereview.chromium.org/59043013/diff/400031/ash/wm/caption_buttons/frame_caption_button_container_view.h File ash/wm/caption_buttons/frame_caption_button_container_view.h ...
7 years, 1 month ago (2013-11-08 23:25:32 UTC) #10
pkotwicz
Changes as requested. Oshima, can you please take another look? https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h File ash/ash_switches.h (right): https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h#newcode46 ...
7 years, 1 month ago (2013-11-09 00:09:02 UTC) #11
oshima
lgtm if the flag is moved. https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h File ash/ash_switches.h (right): https://codereview.chromium.org/59043013/diff/400031/ash/ash_switches.h#newcode46 ash/ash_switches.h:46: ASH_EXPORT extern const ...
7 years, 1 month ago (2013-11-09 01:11:17 UTC) #12
pkotwicz
benwells@, can you please look at the changes in apps/ and chrome/browser/ui/*/apps oshima@, can you ...
7 years, 1 month ago (2013-11-13 00:10:12 UTC) #13
oshima
just for my understanding. where is the height of immersive mode's light bar is specified ...
7 years, 1 month ago (2013-11-13 07:21:36 UTC) #14
benwells
https://codereview.chromium.org/59043013/diff/1070001/apps/app_window_contents.cc File apps/app_window_contents.cc (right): https://codereview.chromium.org/59043013/diff/1070001/apps/app_window_contents.cc#newcode111 apps/app_window_contents.cc:111: // for the sake of the app.window api. On ...
7 years, 1 month ago (2013-11-13 07:41:27 UTC) #15
pkotwicz
benwells@ can you please take another look? https://codereview.chromium.org/59043013/diff/1070001/apps/app_window_contents.cc File apps/app_window_contents.cc (right): https://codereview.chromium.org/59043013/diff/1070001/apps/app_window_contents.cc#newcode111 apps/app_window_contents.cc:111: // for ...
7 years, 1 month ago (2013-11-13 22:06:00 UTC) #16
benwells
Does going into fullscreen on a Mac via the window frame control go into OS ...
7 years, 1 month ago (2013-11-14 00:06:53 UTC) #17
pkotwicz
No, the ShellWindow is not notified when the user enters/exits fullscreen via the MacOS window ...
7 years, 1 month ago (2013-11-14 01:05:16 UTC) #18
pkotwicz
https://codereview.chromium.org/59043013/diff/1280002/apps/shell_window.cc File apps/shell_window.cc (right): https://codereview.chromium.org/59043013/diff/1280002/apps/shell_window.cc#newcode420 apps/shell_window.cc:420: fullscreen_types_ = FULLSCREEN_TYPE_NONE; This is not a logical change ...
7 years, 1 month ago (2013-11-14 01:05:24 UTC) #19
benwells
On 2013/11/14 01:05:24, pkotwicz wrote: > https://codereview.chromium.org/59043013/diff/1280002/apps/shell_window.cc > File apps/shell_window.cc (right): > > https://codereview.chromium.org/59043013/diff/1280002/apps/shell_window.cc#newcode420 > ...
7 years, 1 month ago (2013-11-14 02:31:29 UTC) #20
pkotwicz
oshima@, can you please take another look I fixed a few bugs with my changes ...
7 years, 1 month ago (2013-11-14 02:45:27 UTC) #21
oshima
lgtm
7 years, 1 month ago (2013-11-14 19:27:29 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/pkotwicz@chromium.org/59043013/1590001
7 years, 1 month ago (2013-11-15 22:52:44 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/pkotwicz@chromium.org/59043013/1590001
7 years, 1 month ago (2013-11-16 00:19:06 UTC) #24
commit-bot: I haz the power
Retried try job too often on win_x64_rel for step(s) base_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_x64_rel&number=54591
7 years, 1 month ago (2013-11-16 03:31:54 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/pkotwicz@chromium.org/59043013/1590001
7 years, 1 month ago (2013-11-18 16:04:19 UTC) #26
commit-bot: I haz the power
Retried try job too often on linux_chromeos for step(s) interactive_ui_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_chromeos&number=175883
7 years, 1 month ago (2013-11-18 17:41:35 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/pkotwicz@chromium.org/59043013/1260004
7 years, 1 month ago (2013-11-18 18:25:13 UTC) #28
commit-bot: I haz the power
Retried try job too often on win_x64_rel for step(s) base_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_x64_rel&number=54844
7 years, 1 month ago (2013-11-18 20:42:37 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/pkotwicz@chromium.org/59043013/2030002
7 years, 1 month ago (2013-11-18 20:54:45 UTC) #30
commit-bot: I haz the power
7 years, 1 month ago (2013-11-19 01:01:33 UTC) #31
Message was sent while issue was closed.
Change committed as 235861

Powered by Google App Engine
This is Rietveld 408576698