Closed Bug 1736960 Opened 3 years ago Closed 3 years ago

CSS clip-path creates a lag in refreshing the position of box

Categories

(Core :: Graphics: WebRender, defect)

Firefox 95
Unspecified
Windows 10
defect

Tracking

()

RESOLVED DUPLICATE of bug 1727016
Tracking Status
firefox-esr78 --- unaffected
firefox-esr91 --- wontfix
firefox93 --- wontfix
firefox94 --- wontfix
firefox95 --- wontfix
firefox96 --- fixed

People

(Reporter: karlcow, Unassigned)

References

(Regression, )

Details

(Keywords: regression)

  1. Scroll to the bottom of the page.
  2. Scroll up with mouse wheel or trackpad
  3. The images start to be misaligned
  4. If you wait a bit the image comes back in position.

I recorded profiles
https://share.firefox.dev/3AUT5xC
https://share.firefox.dev/3aWKSOT

The interesting part is that if you scroll a bit and stops. The shifting of the images are happening, but they catch up. Ah it seems to match when the scrollbar disappears.

Removing clip-path fixes it.


/* main.8c9a15b2208e61d905d6.css | https://ssl.pstatic.net/t.static.blog/mobilencc/static/css/main.8c9a15b2208e61d905d6.css */

.thumb__Opuee {
  /* clip-path: url(#roundmask6); */
}

The full rule is

.thumb__Opuee {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	font-size: 0;
	-webkit-clip-path: url(#roundmask6);
	clip-path: url(#roundmask6);
	border-radius: 6px;
}

That looks like a perf issue.
Maybe https://bugzilla.mozilla.org/show_bug.cgi?id=914617

I tried to make another profile after reducing a bit the code.
https://share.firefox.dev/3m2GynH

but I haven't managed yet to make a test case showing the issue.

Whiteboard: [qf]
Summary: CSS clip-path creates a lag in refreshing the position of images → CSS clip-path creates a lag in refreshing the position of box
Component: Layout → Graphics: WebRender

Is there a useful regression window with apz.allow_zooming = true?

(In reply to Timothy Nikkel (:tnikkel) from comment #2)

Is there a useful regression window with apz.allow_zooming = true?

Regression window(with apz.allow_zooming = true):
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=d3d642b624886729636c3690a806f38b4d737731&tochange=e9ff3fec51d3de454f607b69b4acddc2a81409c1

Suspect: Bug 1503616

Regressed by: 1503616

Thanks for that Alice.

This is very similar to bug 1727016. It's highly likely the fix for bug 1727016 will fix this too.

Depends on: 1727016
Severity: -- → S3

I think this page has changed? It no longer reproduces for me.

Yes interesting.
They changed it to

.thumb__Opuee {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	font-size: 0;
	-webkit-clip-path: inset(0 round 6px);
	clip-path: inset(0 round 6px);
	border-radius: 6px;
}

so clip-path: url(#roundmask6); became clip-path: inset(0 round 6px);

we need a test case for reproducing when using SVG as a mask.

Flags: needinfo?(kdubost)

If I go in dev tools and change the clip-path back I can reproduce a problem (I don't remember what the original problem looked like so I can't say if it's the same). My fix for bug 1727016 fixes that problem too.

It would make sense if the reason for the change to the page is that #roundmask6 did not exist. In bug 1727016 the testcase also references a clip-path that does not exist and that is the key reason that the page tickled a bug in gecko.

(this doesn't seem to be a performance issue, but more like a correctness issue. And bug 1727016 should fix this, so no need to track this as a qf bug.)

Whiteboard: [qf]

I'm going to mark this dup of bug 1727016 as that is what I think it is, but I can't confirm because the site changed.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE
Flags: needinfo?(kdubost)
You need to log in before you can comment on or make changes to this bug.