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

Issue 218093002: Ensure fullscreen mode is exited for same-site navigations. (Closed)

Created:
6 years, 8 months ago by miu
Modified:
6 years, 8 months ago
Reviewers:
Charlie Reis
CC:
chromium-reviews, darin-cc_chromium.org, nasko+codewatch_chromium.org, jam, creis+watch_chromium.org, miu+watch_chromium.org, sky, nasko
Visibility:
Public.

Description

Ensure fullscreen mode is exited for same-site navigations. Resolves a fullscreen-within-tab bug where navigation using the Back button doesn't exit fullscreen. This would result in the browser (WebContentsDelegate) erroneously showing a page with the "fullscreen in your tab" UI layout. Furthermore, this change will cause the previous renderer to be notified that it has been force-exited from fullscreen. Should the user revisit using the Back/Forward/History actions, the renderer will therefore be in the correct non-fullscreen state. Added a new unit test to web_contents_impl_unittest.cc to make sure this problem doesn't regress. BUG=356951, 347232 TEST=Repro steps in bug 356951 result in fullscreen exit. Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=261087

Patch Set 1 #

Patch Set 2 : Better approach: DidNavigateMainFramePreCommit #

Total comments: 6

Patch Set 3 : Addressed creis' comments on PS2. #

Patch Set 4 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+89 lines, -21 lines) Patch
M content/browser/frame_host/navigator_delegate.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator_impl.cc View 1 1 chunk +13 lines, -8 lines 0 comments Download
M content/browser/web_contents/web_contents_impl.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/web_contents/web_contents_impl.cc View 1 2 3 2 chunks +17 lines, -13 lines 0 comments Download
M content/browser/web_contents/web_contents_impl_unittest.cc View 1 1 chunk +52 lines, -0 lines 0 comments Download

Messages

Total messages: 16 (0 generated)
miu
creis: PTAL. While r254923 fixed the problem for cross-site navigations (and anything else that causes ...
6 years, 8 months ago (2014-03-29 02:55:44 UTC) #1
Charlie Reis
Sorry for the delay; I was sheriff last week. I'm not clear what the conditions ...
6 years, 8 months ago (2014-03-31 20:21:36 UTC) #2
miu
On 2014/03/31 20:21:36, Charlie Reis wrote: > I'm not clear what the conditions for exiting ...
6 years, 8 months ago (2014-03-31 21:40:40 UTC) #3
Charlie Reis
On 2014/03/31 21:40:40, miu wrote: > On 2014/03/31 20:21:36, Charlie Reis wrote: > > I'm ...
6 years, 8 months ago (2014-03-31 22:50:00 UTC) #4
miu
On 2014/03/31 22:50:00, Charlie Reis wrote: > There's currently no call out to WebContents for ...
6 years, 8 months ago (2014-04-01 03:45:32 UTC) #5
Charlie Reis
Great, much better. LGTM! Maybe change the CL subject to "Ensure fullscreen mode is exited ...
6 years, 8 months ago (2014-04-01 23:12:38 UTC) #6
miu
The CQ bit was checked by miu@chromium.org
6 years, 8 months ago (2014-04-01 23:39:07 UTC) #7
miu
Thanks for the review! :) https://codereview.chromium.org/218093002/diff/20001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/218093002/diff/20001/content/browser/frame_host/navigator_impl.cc#newcode407 content/browser/frame_host/navigator_impl.cc:407: controller_->TakeScreenshot(); On 2014/04/01 23:12:38, ...
6 years, 8 months ago (2014-04-01 23:39:35 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/miu@chromium.org/218093002/60001
6 years, 8 months ago (2014-04-01 23:39:44 UTC) #9
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-02 00:06:12 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.chromium on win_chromium_compile_dbg
6 years, 8 months ago (2014-04-02 00:06:13 UTC) #11
miu
The CQ bit was checked by miu@chromium.org
6 years, 8 months ago (2014-04-02 00:40:06 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/miu@chromium.org/218093002/60001
6 years, 8 months ago (2014-04-02 00:47:01 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/miu@chromium.org/218093002/60001
6 years, 8 months ago (2014-04-02 02:12:38 UTC) #14
commit-bot: I haz the power
Change committed as 261087
6 years, 8 months ago (2014-04-02 06:43:00 UTC) #15
mario.prada
6 years, 8 months ago (2014-04-02 12:59:35 UTC) #16
Message was sent while issue was closed.
On 2014/04/02 06:43:00, I haz the power (commit-bot) wrote:
> Change committed as 261087

On 2014/04/02 06:20:40, I haz the power (commit-bot) wrote:
> Change committed as 170638

According to the flakiness dashboard, this patch looks suspicious to have broken
a bunch of fullscreen related tests for debug builds of blink:

  http://goo.gl/6EEy3u

I've looked at the crash log for Blink commit r170638 (clearly the only one in
the intersection of commit ranges for blink) and couldn't see any obvious
relationship between that crash and that Blink commit. However, by looking at
the intersection of commit ranges for chromium [1], I've found this commit which
seems suspicious because of being related to fullscreen, which is the cause of
the crash in Blink (in WebCore::FullscreenElementStack::webkitExitFullscreen()
[FullscreenElementStack.cpp : 284 + 0x33])

So, I'll be filing a bug shortly to add the test to TestExpectations shortly,
since it's causing noise in the try bots at the moment. Please consider taking a
look to this when you have time, thanks!

[1]
http://build.chromium.org/f/chromium/perf/dashboard/ui/changelog.html?url=/tr...

Powered by Google App Engine
This is Rietveld 408576698