Open Bug 1470419 Opened 6 years ago Updated 2 years ago

Video controls tooltips are offset on "spiegel.de"

Categories

(Core :: DOM: Core & HTML, defect, P3)

defect

Tracking

()

Tracking Status
firefox-esr52 --- affected
firefox-esr60 --- affected
firefox60 --- affected
firefox61 --- affected
firefox62 --- affected

People

(Reporter: csasca, Unassigned)

References

(Blocks 1 open bug)

Details

[Affected versions]:

- Firefox 61.0RC build3
- Firefox 60.1.0esr-build2
- Firefox Dev Edition 62.0b2-build1
- Latest Nightly 62.0a1 (2018-06-21)
- Firefox 60.0.2 build1

[Affected platforms]:

- Windows 10 (x64)
- macOS 10.10
- Ubuntu 18.04 (x64)

[Steps to reproduce]:

1. Start Firefox.
2. Access spiegel.de website.
3. Open any video (eg. http://www.spiegel.de/video/merkel-und-seehofer-fakten-zum-asylstreit-video-99018531.html).
4. Scroll the page down, but keep the video frame still visible.
5. Click on fullscreen and hover the buttons from the top-left corner.

[Expected result]:

- The tooltip appears in the right of the mouse cursor.

[Actual result]:

- The tooltip is offset.

[Regression range]:

- The issue is reproducing way back in 2015 builds, so this is not a regression.
- Going even further than 2015 with the regression, the video will not render at all.

[Aditional Notes]:

- Here is a link to a screencast of the issue (https://drive.google.com/open?id=1IkRdswcTId-yk5goNVwpz9l2vRCMFRR0).

- The offset of the tooltips depends on how much the page is scrolled down, before the video is put in fullscreen.
my guess this would be a webcompat / layout thing.. that's not a playback one.
likely a problem in their css
Component: Audio/Video → Layout
So the position of the tooltip is set by script, and the value is based on MouseEvent.pageX / pageY.

Since the page has scrolled, but the tooltip is absolutely-positioned which gets captured by the fullscreen element (because fullscreen element creates a containing block for absoultely-positioned and fixed-positioned descendents), so the position is wrong (because the position value is based on mouse position related to page, while they are positioned based on the fullscreen element).

Creating a containing block for absolutely- and fixed-positioned descendents doesn't seem to be in the Fullscreen API spec, but it probably should.

Chrome doesn't seem to have this issue probably because when they enter fullscreen, the page gets scrolled to the top, which I don't think is the right thing to do (because theoretically you can make the fullscreen element transparent and show underlying page content, and scrolling the page is observable. it's not observable on Chrome at the moment because they haven't finished top layer implementation).

So my impression is that this is probably not fixable from our side.
Component: Layout → DOM
P3 based on comment 2.
Priority: -- → P3
Component: DOM → DOM: Core & HTML
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.