Closed Bug 1894136 Opened 2 years ago Closed 1 year ago

Fixed-to-bottom ad on vice.com is temporarily mispositioned during scrolling when the dynamic toolbar disappears (fixed inside fixed gets offset double-applied)

Categories

(Core :: Panning and Zooming, defect, P2)

defect

Tracking

()

RESOLVED FIXED
133 Branch
Tracking Status
firefox133 --- fixed

People

(Reporter: mstange, Assigned: botond)

References

(Blocks 3 open bugs)

Details

Attachments

(4 files)

Attached video Screen recording

Steps to reproduce:

  1. In Firefox for Android, load the attached testcase.
  2. Scroll down.

Expected results:
The box at the bottom should stay attached to the bottom toolbar.

Actual results:
The box at the bottom slides down too fast as the bottom toolbar disappears, getting partially clipped. Once the bottom toolbar is fully gone, the box jumps back fully onscreen.

I encountered this with an ad on vice.com when I was testing random web pages.

Attached file testcase
Blocks: perf-android
Blocks: 1895538

The severity field is not set for this bug.
:botond, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(botond)

This is one of the bugs we're tracking in FFXP-2856.

Severity: -- → S3
Flags: needinfo?(botond)
Priority: -- → P2
Attached file A modified test case

Attaching file is a modified version of the test case in comment 1. A difference is the inner one is fixed to the top, not to the bottom.

In this specific case, if the toolbar is positioned at the bottom, the inner one should stick to the top border, but actually it's not.

From APZ perspective, while the toolbar is moving, for the inner one we do set zero translation here properly, but even with the zero translation, it's moving because the outer translation somehow affects the inner one.

Is this more or less an issue in WebRender?

See Also: → 1916910
See Also: → 1917720

Fixed elements nested inside an element that is already fixed would get
double translated otherwise.

Assignee: nobody → botond
Status: NEW → ASSIGNED

The attached patch fixes the original testcase (bottom-fixed element nested inside bottom-fixed element).

A fix for the modified test case (top-fixed element inside bottom-fixed element) will be deferred to a follow-up bug.

Blocks: 1926652

(In reply to Botond Ballo [:botond] from comment #6)

A fix for the modified test case will be deferred to a follow-up bug.

Filed bug 1926652 for this.

Pushed by bballo@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2da57a481a35 Only apply dynamic toolbar translation to the root of a subtree of fixed content. r=dlrobertson
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 133 Branch
Duplicate of this bug: 1917720
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: