Closed Bug 1662287 Opened 3 years ago Closed 2 years ago

CSS Perspective/Perspective-Origin breaks scrolling on nested views and iframes

Categories

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

80 Branch
defect

Tracking

()

RESOLVED FIXED
Tracking Status
firefox-esr68 --- wontfix
firefox-esr78 --- wontfix
firefox80 --- wontfix
firefox81 --- wontfix
firefox82 --- wontfix

People

(Reporter: sollacea, Unassigned)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

40.29 KB, text/plain
Details

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0

Steps to reproduce:

This bug can be observed in effect on https://projectvinyl.net/ . I have a fix yet that has not yet been deployed, so if you cannot reproduce go to Inspect and remove the "no-3d" class from the top of the document.

  • Scroll down part way on the page (only needs to be by a little, the bug only appears when scrollY > 0 on the element where perspective and perspective-origin have been set)
  • Attempt to click and drag the horizontal scrollbar on any of the video carousels.
  • Attempt to click and drag the vertical scrollbar on the twitter iframe

Actual results:

In the case of the horizontal scrollbars:
The scrollbar will either not move at all, or snap suddenly to the opposite as soon as you click.

In the case of the vertical scrollbar:
The scroll position will snap to an offset from the mouse position proportional to the distance the main page has been scrolled.

Expected results:

Both scrollbars should move smoothly with the cursor with no offset (as scrollbars are want to do)

I have not been able to reproduce this bug on Chrome.
It is not present in Nightly versions - instead the 3d transform has a pronounced jittery effect (82.0a1 (2020-08-31) (64-bit))

This issue was observed previously in prior versions of production Firefox (as late as 2019), and I have not noticed the issue again until very recently (80.0 (64-bit))

I'd previously filed a bug report for an issue similar to this, that I was unable to find, and which I assumed would have been resolved by the release of Firefox 80 as I've been using Nightly for several months now (since 79) with no issue.

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → CSS Parsing and Computation
Product: Firefox → Core

I couldn't reproduce with or without Webrender enabled. Can you attach the contents of your about:support please?

APZ is probably a better component than CSS per se, bad bot :)

Component: CSS Parsing and Computation → Panning and Zooming
Flags: needinfo?(sollacea)
Attached file support.txt

(In reply to Emilio Cobos Álvarez (:emilio) from comment #2)

I couldn't reproduce with or without Webrender enabled. Can you attach the contents of your about:support please?

APZ is probably a better component than CSS per se, bad bot :)

Data attached, as requested. Also remember to scroll down the page partially when trying to reproduce. (anything more than 200-300px should start seeing the effect)

The website is down due to maintenance on the host right now, however I will check the issue again as soon as it is back up and update my instructions as necessary.

Flags: needinfo?(sollacea)

Weird.

I suddenly cannot reproduce the bug any more. It's like it never even existed. All that's really changes is that I shut down to go to be last night, and this morning it was gone.

I'm going to leave this open for now, just in case it comes back, but for now I guess there's really nothing to do?

For reference, I think the other bug you filed before was https://bugzilla.mozilla.org/show_bug.cgi?id=1584794

I can't reproduce the problem with the horizontal scrollbars, but I do see the problem with the vertical scrollbar on the twitter pane. The problem only occurs when WebRender is disabled (if your configuration has it enabled by default, you need to set gfx.webrender.force-disabled=true in about:config and restart the browser to disable it). I can see that behaviour in 80 release, 81 beta, and 82 nightly (with enhanced tracking protection disabled so the twitter pane actually loads).

Depends on: fixed-by-webrender
Severity: -- → S3
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P3
Regressed by: 1429373
Has Regression Range: --- → yes

(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #5)

For reference, I think the other bug you filed before was https://bugzilla.mozilla.org/show_bug.cgi?id=1584794
Ah, yeah. Thanks.

That one was specific to the bad performance, though, something I notice has improved. (plus I ended up removing transform-style:preserve-3d from the rest of the body, which turned out to be the main culprit in that case)

The issue appears to be happening again, btw. Just as before, both horizontal and vertical scrollbars are misbehaving.

I've also identified another bug with regard to scrolling the viewport itself when content changes, though I can make that as a separate ticket.

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