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

Issue 100903002: Ignore fullscreen windows which are behind other windows for fullscreen mode. (Closed)

Created:
7 years ago by flackr
Modified:
7 years ago
Reviewers:
pkotwicz, oshima, sky
CC:
chromium-reviews, kalyank, sadrul, ben+ash_chromium.org, sky
Visibility:
Public.

Description

Ignore non-active fullscreen windows for shelf state. BUG=319889 TEST=ShelfLayoutManagerTest.FullscreenWindowInFrontHidesShelf, ShelfLayoutManagerTest.FullscreenWindowOnSecondDisplay,WorkspaceLayoutManagerTest.NotifyFullscreenChanges TEST=Navigate to a site using HTML5 fullscreen API, alt tab away to another window and back. Window remains fullscreen but shelf shows while another window is in front. Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=239859

Patch Set 1 : . #

Total comments: 4

Patch Set 2 : Ignore fullscreen windows not at front of stacking order. #

Patch Set 3 : Add multi-monitor test. #

Total comments: 2

Patch Set 4 : Check that fullscreen window is topmost tracked window. #

Patch Set 5 : Unify detection of topmost fullscreen window. #

Patch Set 6 : Notify ShellObservers of fullscreen state changes due to stacking order. #

Patch Set 7 : Add test that WorkspaceLayoutManager correctly notifies on fullscreen changes. #

Total comments: 12

Patch Set 8 : Merge with master. #

Patch Set 9 : Review suggestions. #

Patch Set 10 : Remove static cast. #

Total comments: 8

Patch Set 11 : Comments. #

Total comments: 12

Patch Set 12 : Comments. #

Patch Set 13 : Merge and check hide_shelf_when_fullscreen. #

Patch Set 14 : Check that fullscreen window exists. #

Patch Set 15 : Merge with master. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+236 lines, -102 lines) Patch
M ash/root_window_controller.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +3 lines, -4 lines 0 comments Download
M ash/root_window_controller.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +13 lines, -9 lines 0 comments Download
M ash/root_window_controller_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +12 lines, -28 lines 0 comments Download
M ash/shelf/shelf_layout_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +0 lines, -4 lines 0 comments Download
M ash/shelf/shelf_layout_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +8 lines, -12 lines 0 comments Download
M ash/shelf/shelf_layout_manager_unittest.cc View 1 2 1 chunk +62 lines, -0 lines 0 comments Download
M ash/wm/gestures/shelf_gesture_handler.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M ash/wm/overview/window_selector_controller.cc View 1 chunk +0 lines, -12 lines 0 comments Download
M ash/wm/overview/window_selector_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -2 lines 0 comments Download
M ash/wm/workspace/workspace_layout_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +10 lines, -1 line 0 comments Download
M ash/wm/workspace/workspace_layout_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 9 chunks +30 lines, -14 lines 0 comments Download
M ash/wm/workspace/workspace_layout_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +71 lines, -0 lines 0 comments Download
M ash/wm/workspace_controller.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 chunks +10 lines, -11 lines 0 comments Download
M chrome/browser/fullscreen_chromeos.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/fullscreen_win.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/notifications/fullscreen_notification_blocker.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +7 lines, -1 line 0 comments Download

Messages

Total messages: 26 (0 generated)
flackr
Hi, This is the change I talked to you about when I was there. By ...
7 years ago (2013-12-03 15:29:26 UTC) #1
oshima
https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc File ash/wm/overview/window_selector_controller.cc (left): https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc#oldcode77 ash/wm/overview/window_selector_controller.cc:77: // it should exit fullscreen mode. is it difficult ...
7 years ago (2013-12-03 19:04:56 UTC) #2
flackr
https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc File ash/wm/overview/window_selector_controller.cc (left): https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc#oldcode77 ash/wm/overview/window_selector_controller.cc:77: // it should exit fullscreen mode. On 2013/12/03 19:04:57, ...
7 years ago (2013-12-03 19:08:25 UTC) #3
oshima
On 2013/12/03 19:08:25, flackr wrote: > https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc > File ash/wm/overview/window_selector_controller.cc (left): > > https://codereview.chromium.org/100903002/diff/20001/ash/wm/overview/window_selector_controller.cc#oldcode77 > ...
7 years ago (2013-12-03 19:11:26 UTC) #4
oshima
https://codereview.chromium.org/100903002/diff/20001/ash/wm/workspace_controller.cc File ash/wm/workspace_controller.cc (right): https://codereview.chromium.org/100903002/diff/20001/ash/wm/workspace_controller.cc#newcode77 ash/wm/workspace_controller.cc:77: } else if (window_state->IsFullscreen() && window_state->IsActive()) { Don't we ...
7 years ago (2013-12-03 19:17:51 UTC) #5
flackr
https://codereview.chromium.org/100903002/diff/20001/ash/wm/workspace_controller.cc File ash/wm/workspace_controller.cc (right): https://codereview.chromium.org/100903002/diff/20001/ash/wm/workspace_controller.cc#newcode77 ash/wm/workspace_controller.cc:77: } else if (window_state->IsFullscreen() && window_state->IsActive()) { On 2013/12/03 ...
7 years ago (2013-12-03 21:32:57 UTC) #6
flackr
https://codereview.chromium.org/100903002/diff/50001/content/browser/renderer_host/render_widget_host_view_aura.cc File content/browser/renderer_host/render_widget_host_view_aura.cc (right): https://codereview.chromium.org/100903002/diff/50001/content/browser/renderer_host/render_widget_host_view_aura.cc#newcode1156 content/browser/renderer_host/render_widget_host_view_aura.cc:1156: window_->SetBounds(rect); In my first CL an activation change in ...
7 years ago (2013-12-03 21:54:06 UTC) #7
flackr
https://codereview.chromium.org/100903002/diff/50001/ash/wm/workspace_controller.cc File ash/wm/workspace_controller.cc (right): https://codereview.chromium.org/100903002/diff/50001/ash/wm/workspace_controller.cc#newcode77 ash/wm/workspace_controller.cc:77: } else if (*i == windows.back() && window_state->IsFullscreen()) { ...
7 years ago (2013-12-03 22:05:54 UTC) #8
flackr
Okay, please take a look. The problem was that the popup window telling you that ...
7 years ago (2013-12-04 19:09:57 UTC) #9
pkotwicz
A cool change! I have tried applying the CL locally and I have some comments: ...
7 years ago (2013-12-04 20:29:44 UTC) #10
flackr
Thanks for the great points! I've unified the fullscreen window detection so that blocking of ...
7 years ago (2013-12-04 21:58:44 UTC) #11
flackr
Okay, I've fixed the notifications when the fullscreen state changes and added a test for ...
7 years ago (2013-12-04 22:41:18 UTC) #12
pkotwicz
Looks good! Btw, the bug wrt to javascript alerts is still there but it is ...
7 years ago (2013-12-05 02:46:28 UTC) #13
flackr
https://codereview.chromium.org/100903002/diff/140001/ash/root_window_controller.cc File ash/root_window_controller.cc (right): https://codereview.chromium.org/100903002/diff/140001/ash/root_window_controller.cc#newcode521 ash/root_window_controller.cc:521: const aura::Window* RootWindowController::GetTopmostFullscreenWindow() const { On 2013/12/05 02:46:29, pkotwicz ...
7 years ago (2013-12-05 16:48:54 UTC) #14
oshima
https://codereview.chromium.org/100903002/diff/200001/ash/root_window_controller.cc File ash/root_window_controller.cc (right): https://codereview.chromium.org/100903002/diff/200001/ash/root_window_controller.cc#newcode527 ash/root_window_controller.cc:527: if ((*iter)->type() != aura::client::WINDOW_TYPE_POPUP && can this be == ...
7 years ago (2013-12-05 19:08:58 UTC) #15
flackr
https://codereview.chromium.org/100903002/diff/200001/ash/root_window_controller.cc File ash/root_window_controller.cc (right): https://codereview.chromium.org/100903002/diff/200001/ash/root_window_controller.cc#newcode527 ash/root_window_controller.cc:527: if ((*iter)->type() != aura::client::WINDOW_TYPE_POPUP && On 2013/12/05 19:08:58, oshima ...
7 years ago (2013-12-05 19:30:21 UTC) #16
oshima
lgtm Thanks! fullscreen will be much more useful with this.
7 years ago (2013-12-05 19:35:35 UTC) #17
pkotwicz
LGTM with comments https://codereview.chromium.org/100903002/diff/220001/ash/root_window_controller.h File ash/root_window_controller.h (right): https://codereview.chromium.org/100903002/diff/220001/ash/root_window_controller.h#newcode227 ash/root_window_controller.h:227: aura::Window* GetWindowForFullscreenMode(); WindowSelectorController seems to be ...
7 years ago (2013-12-05 20:50:09 UTC) #18
flackr
https://codereview.chromium.org/100903002/diff/220001/ash/root_window_controller.h File ash/root_window_controller.h (right): https://codereview.chromium.org/100903002/diff/220001/ash/root_window_controller.h#newcode227 ash/root_window_controller.h:227: aura::Window* GetWindowForFullscreenMode(); On 2013/12/05 20:50:10, pkotwicz wrote: > WindowSelectorController ...
7 years ago (2013-12-05 21:39:15 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/flackr@chromium.org/100903002/280001
7 years ago (2013-12-06 18:27:57 UTC) #20
commit-bot: I haz the power
Retried try job too often on chromium_presubmit for step(s) presubmit http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=chromium_presubmit&number=39902
7 years ago (2013-12-06 19:08:52 UTC) #21
flackr
+sky for chrome/browser and content/browser OWNERS, PTAL, thanks!
7 years ago (2013-12-06 19:11:54 UTC) #22
flackr
Scott, ping.
7 years ago (2013-12-10 14:43:38 UTC) #23
sky
LGTM
7 years ago (2013-12-10 16:42:46 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/flackr@chromium.org/100903002/320001
7 years ago (2013-12-10 16:55:58 UTC) #25
commit-bot: I haz the power
7 years ago (2013-12-10 21:55:13 UTC) #26
Message was sent while issue was closed.
Change committed as 239859

Powered by Google App Engine
This is Rietveld 408576698