Closed Bug 1502380 Opened 6 years ago Closed 4 years ago

Google Presentation (Slides) is not opened in full screen with ctrl+F5/"Present" option

Categories

(Web Compatibility :: Site Reports, defect, P3)

defect

Tracking

(firefox63 affected, firefox64 affected, firefox65 affected)

RESOLVED FIXED
Tracking Status
firefox63 --- affected
firefox64 --- affected
firefox65 --- affected

People

(Reporter: cbadau, Unassigned)

References

()

Details

(Keywords: webcompat:site-wait, Whiteboard: [sitewait])

[Affected versions]: - Firefox 64.0b4 (20181025233934) - Nightly 65.0a1 (2018-10-25) - Firefox 63 RC [Affected platforms]: - Windows 7 x64 - macOS 10.13 - Ubuntu 16.04 x64 [Steps to reproduce]: 1. Launch Firefox. 2. Open a google presentation (e.g: https://docs.google.com/presentation/d/1eumDBJYjUx7-VCwMTAZv8FxW8MoYbnr1X4VojHQ_Iik/edit#slide=id.g466a9ad5c6_0_5). 3. From "View" select "Present" option or press ctrl+F5(Windows, Ubuntu)/cmd+Enter(mac). [Expected result]: - The document is opened in Full Screen. [Actual result]: - If the "Present" option from "View" is selected, a new Firefox window is opened with the document in Presentation mode, not in Full Screen. - If ctrl+F5 is pressed, the document is opened in Presentation mode (not in Full Screen) in the same tab. [Regression range]: - This is not a regression since the issue is also reproducible in Firefox 35. [Additional notes]: - In Chrome, the document is opened in Full Screen after selecting "Present" from "View" or pressing ctrl+F5.
Edge behaves the same as Firefox so I'm guessing there's some Fullscreen API difference here. Camelia, do you have access to Chromium? I'm curious if the behaviour is any different there.
Component: General → DOM
Flags: webcompat?
Flags: needinfo?(camelia.badau)
Priority: -- → P3
I've tested on Ubuntu 16.04 on Chromium and the behaviour here is the same like on Chrome: the document is opened in Full Screen after selecting "Present" from "View" or pressing ctrl+F5.
Flags: needinfo?(camelia.badau)
Thanks for verifying in Chromium, Camelia!

Tom, would you be able to dig into this? Thanks!

Flags: needinfo?(twisniewski)

Pardon the delay.

It looks like requestFullscreen is not even called in Firefox, while it is in Chrome. The script Chrome is hitting is this one. This is line which does the call, which Firefox also executes:

    k && (c || b && !Tc || this.od.requestFullScreen(),

But in Firefox, the value of k is false, so no attempt is even made to fullscreen.

The value of k is determined just above that line:

    h = N(M(), "punch-efep");
    if (h = Yc || Uc && h) {
        h = this.D.na();
        h = HJe(h);
        var k = h.body;
        h = !!(k.webkitRequestFullscreen || k.mozRequestFullScreen && h.mozFullScreenEnabled || k.msRequestFullscreen && h.msFullscreenEnabled || k.requestFullscreen && h.fullscreenEnabled)
    }
    k = h;

Firefox never even enters that if-statement, while Chrome does. The difference is that Yc is true on Chrome. It turns out that's a global variable that was mercifully easier to find than I feared (it's in the second script I linked):

  , Yc = kba(Zb, "WebKit") && !$b("Edge")

So they're blocking Firefox via UA-sniff. I tested to see if adding Firefox would help, by leveraging this similar global variable:

  , Wc = $b("Gecko") && !(kba(Zb, "WebKit") && !$b("Edge")) && !($b("Trident") || $b("MSIE")) && !$b("Edge")

That is, I changed their if-statement to this:

    if (h = (Yc || Wc) || Uc && h) {

And with that, it's working for me on Firefox as well. I have no idea why they're artificially blocking Firefox, though.

Flags: needinfo?(twisniewski)

Thanks Tom! I think I'll go ahead and email Google about this.

Component: DOM → Desktop
Flags: webcompat? → needinfo?(miket)
Product: Core → Web Compatibility

I've emailed our partner mailing list.

Flags: needinfo?(miket)
Whiteboard: [sitewait]

See bug 1547409. Moving webcompat whiteboard tags to keywords.

A click on the "Present" button now works in Firefox (84) the same way it does in Chrome: the presentation is opened in fullscreen mode. Not sure if that's due to a Firefox change or a Google Presentations-change.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.