New issue
Advanced search Search tips

Issue 883535 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Sep 19
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Fullscreen-in-tab mode is exited when cast dialog is opened. Which also ends a Media Remoting session.

Project Member Reported by dbbrooks@chromium.org, Sep 12

Issue description

Chrome Version: 71.0.3550.0
OS: Mac and Win

Note: This only happens with the WebUI dialog. Not Harmony.

What steps will reproduce the problem?
(1) Go to a video site for example, Vimeo.com, open a video and cast the tab to a Chromecast receiver.
(2) Click fullscreen on the video player.
(3) Video will take up most of the space on the page, the rest will be a gray background. And the video will play fullscreen on the receiver.
(4) Click on the cast icon in the toolbar.


What is the expected result? The state of fullscreen-in-tab, should not change. The dialog is just being opened.

What happens instead? Fullscreen-in-tab exits. Which also ends a Media Remoting session.

Internal feedback ID: 85657280955
 
Labels: -Type-Bug Type-Bug-Regression
Note that this is the cause (as determined by Takumi and Yuri) https://bugs.chromium.org/p/chromium/issues/detail?id=812769. The're wondering whether it's worth fixing since it doesn't happen with the Harmony UI. Brendan, Mark, WDYT?
Labels: -Pri-2 Target-71 Pri-1
Yes because there is a reasonable chance we will not go 100% in M71
Owner: m...@chromium.org
Status: Assigned (was: Untriaged)
Cc: a...@chromium.org
Labels: ReleaseBlock-Stable
Status: Started (was: Assigned)
+cc avi@ (per Comment 1)

Starting to look into this. Hopefully, it's as simple as adding an extra check for the FS-within-tab use case...
Components: UI>Browser>FullScreen
Labels: M-71
This was intentional as a security fix. Showing dialogs kicks you out of HTML5 fullscreen.
avi: Understood. However, it seems that fix was being made under the assumption that the browser window is also fullscreened. Further explanation: https://chromium-review.googlesource.com/c/chromium/src/+/1228976/1/chrome/browser/ui/browser.cc#2070

I was aware of tab fullscreen and browser fullscreen. I had no idea there was such a thing as "FullscreenWithinTab" and I'm still not clear what it is. Can you explain it? Its explanation in the fullscreen controller is not helpful :(
F-i-T is, literally, fullscreen-in-tab.  The content is rendered fullscreen, but only within the extents of the existing tab.  Imagine the desktop was shrunk to fit within the boundaries of the existing tab.

More specifically, the fullscreen area is sized to match the output resolution and aspect ratio of the TV that's being cast to (but, again, constrained by the extents of the original tab).

This allows a user to fullscreen a video element and mirror it to their cast device without the fullscreen video taking over their entire browser.  They can switch to a different tab/app and multitask.

F-i-T is different from normal fullscreen modes in that none of the browser chrome is hidden.  I believe that omnibar, permissions, modals, etc. all work the same as normal, non-full-screened tabs.

This mode can be activated by mirroring a tab to any destination (Cast device, Google meeting, Cast for EDU) and triggering fullscreen.
Oh. That is... odd. Lemme look at your change again.
Avi: You can use the tabCapture demo extension to activate this UI, to get hands-on feel for what's going on here. https://cs.chromium.org/chromium/src/chrome/common/extensions/docs/examples/api/tabCapture/

Click the extension button to capture a tab, switch back to the captured tab, go to a site like YouTube and fullscreen a video.

Project Member

Comment 13 by bugdroid1@chromium.org, Sep 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1c8c2146c2f99fb7eefb79b170e60f53700f7ab8

commit 1c8c2146c2f99fb7eefb79b170e60f53700f7ab8
Author: Yuri Wiitala <miu@chromium.org>
Date: Wed Sep 19 19:47:42 2018

Dialogs don't drop tab fullscreen when in FullscreenWithinTab mode.

Overrides the default behavior of dropping fullscreen when a tab modal
dialog is opened in the FullscreenWithinTab case. This is because, in
FWT mode, the browser window is in its normal layout (not fullscreened).

Bug:  883535 , 812769 
Change-Id: I1c262954b962d508eb86ef9a8a312bec03ab2332
Reviewed-on: https://chromium-review.googlesource.com/1228976
Commit-Queue: Yuri Wiitala <miu@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#592522}
[modify] https://crrev.com/1c8c2146c2f99fb7eefb79b170e60f53700f7ab8/chrome/browser/ui/browser.cc
[modify] https://crrev.com/1c8c2146c2f99fb7eefb79b170e60f53700f7ab8/chrome/browser/ui/browser_browsertest.cc
[modify] https://crrev.com/1c8c2146c2f99fb7eefb79b170e60f53700f7ab8/chrome/browser/ui/exclusive_access/fullscreen_controller.h

Labels: -M-71 -Target-71 Target-70 Merge-Request-70 M-70
Status: Fixed (was: Started)
Fixed.

As the original problem regressed starting in M70, requesting merge now.
Project Member

Comment 15 by sheriffbot@chromium.org, Sep 20

Labels: -Merge-Request-70 Merge-Review-70 Hotlist-Merge-Review
This bug requires manual review: M70 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: benmason@(Android), kariahda@(iOS), geohsu@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-70 Merge-Approved-70
Project Member

Comment 17 by bugdroid1@chromium.org, Sep 21

Labels: -merge-approved-70 merge-merged-3538
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a438e211d0aa6f12eee274b22c4daef442a28eac

commit a438e211d0aa6f12eee274b22c4daef442a28eac
Author: Yuri Wiitala <miu@chromium.org>
Date: Fri Sep 21 20:35:42 2018

Dialogs don't drop tab fullscreen when in FullscreenWithinTab mode.

Overrides the default behavior of dropping fullscreen when a tab modal
dialog is opened in the FullscreenWithinTab case. This is because, in
FWT mode, the browser window is in its normal layout (not fullscreened).

Bug:  883535 , 812769 
Change-Id: I1c262954b962d508eb86ef9a8a312bec03ab2332
Reviewed-on: https://chromium-review.googlesource.com/1228976
Commit-Queue: Yuri Wiitala <miu@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#592522}(cherry picked from commit 1c8c2146c2f99fb7eefb79b170e60f53700f7ab8)
Reviewed-on: https://chromium-review.googlesource.com/1239346
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{#565}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
[modify] https://crrev.com/a438e211d0aa6f12eee274b22c4daef442a28eac/chrome/browser/ui/browser.cc
[modify] https://crrev.com/a438e211d0aa6f12eee274b22c4daef442a28eac/chrome/browser/ui/browser_browsertest.cc
[modify] https://crrev.com/a438e211d0aa6f12eee274b22c4daef442a28eac/chrome/browser/ui/exclusive_access/fullscreen_controller.h

Labels: Merge-Merged-70-3538
The following revision refers to this bug: 
https://chromium.googlesource.com/chromium/src.git/+/a438e211d0aa6f12eee274b22c4daef442a28eac

Commit: a438e211d0aa6f12eee274b22c4daef442a28eac
Author: miu@chromium.org
Commiter: miu@chromium.org
Date: 2018-09-21 20:35:42 +0000 UTC

Dialogs don't drop tab fullscreen when in FullscreenWithinTab mode.

Overrides the default behavior of dropping fullscreen when a tab modal
dialog is opened in the FullscreenWithinTab case. This is because, in
FWT mode, the browser window is in its normal layout (not fullscreened).

Bug:  883535 , 812769 
Change-Id: I1c262954b962d508eb86ef9a8a312bec03ab2332
Reviewed-on: https://chromium-review.googlesource.com/1228976
Commit-Queue: Yuri Wiitala <miu@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#592522}(cherry picked from commit 1c8c2146c2f99fb7eefb79b170e60f53700f7ab8)
Reviewed-on: https://chromium-review.googlesource.com/1239346
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{#565}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
Status: Verified (was: Fixed)
verified on dev 71.0.3559.6 and beta 70.03538.35

Sign in to add a comment