On Mac OS, doorhanger UI gets dismissed after exiting full screen YouTube video in full screen browser

VERIFIED FIXED in Firefox 55

Status

()

defect
P2
normal
VERIFIED FIXED
2 years ago
2 years ago

People

(Reporter: kkumari, Assigned: dthayer)

Tracking

55 Branch
mozilla55
Unspecified
macOS
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox55 fixed)

Details

Attachments

(1 attachment)

On Mac OS, doorhanger UI and hamburger badge get dismissed after exiting full screen YouTube video in full screen browser

STR:
1. Install a nightly build (Fx55)that contains the patches for bug 893505 and has an update
2. Launch Firefox
3. Open about:config and 
   Change app.update.badgeWaitTime to 10
   Change app.update.lastUpdateTime.background-update-timer to 1
   Change app.update.promptWaitTime to 30
   Change app.update.service.enabled to false
   Change app.update.timerMinimumDelay to 10
4. Exit Firefox
5. Launch Firefox
6. Enter full screen mode asap (use Control-Command-F)
7. Wait ~3 minutes 
8. Observe doorhanger UI (opposite to bug 1348396) 

9. Open a youtube video and click the fullscreen button to enter fullscreen video
10. Press escape to exit full screen video

Expected: There should be doorhanger ui as in step 8

Actual: There is no doorhanger ui

Note: After step 10, wait ~2-3 minutes, hamburger menu badge appears

If we exit full screen mode (use Control-Command-F or use view menu to exit) too then browser displays doorhanger ui again. 


See screen capture: https://youtu.be/cU1HcrJjkQY (Here I started with normal screen, please ignore the audio of the video)
macOS has a Full Screen mode that’s different from a video full-screen mode that the website can display. You’re right. When in OS full screen mode, we should behave exactly the same as if we’re in windowed mode.

But when we’re in video full screen mode (where the video takes over completely), we should hide our doorhangers.

Thanks for catching this issue.
Blocks: 893505
Priority: -- → P2
Doug, if you don't have a Mac I can likely find time in the near future to look at this.
Flags: needinfo?(dothayer)
I have a Mac. This is next on my list to hammer out.
Assignee: nobody → dothayer
Flags: needinfo?(dothayer)
Comment on attachment 8870985 [details]
Bug 1357917 - Only hide doorhanger when navtoolbox autohides

https://reviewboard.mozilla.org/r/142556/#review146392

::: commit-message-e84ac:8
(Diff revision 1)
> +entering fullscreen but then waits a little bit (not sure what
> +triggers it) before updating the anchor arrow. This seems to be

This sounds similar to the issue in bug 1363756 in that there seems to be some kind of delay in the panel adjustment code. It would be helpful if we gained a better understanding of what that was... but I guess it would be fair to make that a followup bug.

::: commit-message-e84ac:15
(Diff revision 1)
> +Gijs, do you know of any existing bugs for this or should I make
> +a new one? I couldn't find anything on BMO.

Please make sure to update the commit message before landing. :-)

::: browser/components/customizableui/content/panelUI.js:709
(Diff revision 1)
>        this._clearBadge();
>        if (!notifications[0].options.badgeOnly) {
>          this._showBannerItem(notifications[0]);
>        }
>      } else if (doorhangers.length > 0) {
> +      let autoHideFullScreen = Services.prefs.getBoolPref("browser.fullscreen.autohide", false) &&

I think the non-Lion fullscreen mode is now dead (on OS X) - we no longer support OSX's that predate Lion. You can remove the relevant bits either here or in another bug.

::: browser/components/customizableui/content/panelUI.js:712
(Diff revision 1)
>        }
>      } else if (doorhangers.length > 0) {
> +      let autoHideFullScreen = Services.prefs.getBoolPref("browser.fullscreen.autohide", false) &&
> +                               !FullScreen.useLionFullScreen;
>        // Only show the doorhanger if the window is focused and not fullscreen
> -      if (window.fullScreen || Services.focus.activeWindow !== window) {
> +      if ((window.fullScreen && autoHideFullScreen) || Services.focus.activeWindow !== window) {

I think this doesn't distinguish between DOM fullScreen and non-DOM fullscreen, which behave differently on OS X, and that means this patch isn't quite right.

Compare what happens if you go to e.g. youtube or https://www.quirksmode.org/html5/tests/video.html and fullscreen a video, with what happens if you use the View > Full Screen option (or the green button in the caption buttons).
Attachment #8870985 - Flags: review?(gijskruitbosch+bugs)
Comment on attachment 8870985 [details]
Bug 1357917 - Only hide doorhanger when navtoolbox autohides

https://reviewboard.mozilla.org/r/142556/#review146938

Nice, thanks!

::: commit-message-e84ac:9
(Diff revision 2)
> +triggers it) before updating the anchor arrow. This seems to be
> +a general problem with doorhangers though and not specific to us,
> +though we may have been the first to hit it since we're a
> +doorhanger positioned on the edge of the screen which persists
> +even if you click away from it, which I believe is unique. I am
> +creating a followup bug to track this. Fortunately it shouldn't
> +present itself often, since the typical case should be these
> +doorhangers displaying _while_ a user is in fullscreen, not the
> +user entering fullscreen while the doorhanger is already
> +displaying.

Please replace "This seems to be a general problem..." to the end of the paragraph with "This is covered by bug ..." (with a bug number for the bug you're filing/filed about this issue :-) ).
Attachment #8870985 - Flags: review?(gijskruitbosch+bugs) → review+
Pushed by dothayer@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/559651eb7bf8
Only hide doorhanger when navtoolbox autohides r=Gijs
https://hg.mozilla.org/mozilla-central/rev/559651eb7bf8
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
I am reopening this bug as reported issue is still reproducible.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Depends on: 1369899
This should be resolved with Bug 1369899.
Status: REOPENED → RESOLVED
Closed: 2 years ago2 years ago
Resolution: --- → FIXED
I tested this bug fix and found it to be working fine. Doorhanger UI is there after  exiting full screen video. Thanks!
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.