Closed Bug 1585589 Opened 2 years ago Closed 2 years ago

privacy.resistFingerprinting makes tab strip scrolling with overflow arrows unsmooth

Categories

(Core :: DOM: Animation, defect)

70 Branch
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla71
Tracking Status
firefox-esr60 --- unaffected
firefox-esr68 --- unaffected
firefox67 --- unaffected
firefox68 --- unaffected
firefox69 --- unaffected
firefox70 --- disabled
firefox71 --- verified

People

(Reporter: ke5trel, Assigned: tjr)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(1 file)

STR:

  1. Set privacy.resistFingerprinting = true.
  2. Create enough new tabs to overflow the tab strip.
  3. Click and hold the overflow arrows to scroll the tab strip continuously.

Expected:

Tab strip scrolls smoothly.

Actual:

Tab strip jumps and stutters with RFP enabled, making it harder to visually track the movement.

Mousewheel scrolling in the tab strip is unaffected.

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=aff36ef651a7705800156e86076197d8a202afa7&tochange=02bfa4baa2edd2d1c9417018c4cbd85e99d15aa8

Regressed by Bug 1577243.

Component: Tabbed Browser → DOM: Animation
Product: Firefox → Core

That bug shouldn't affect the performance of declarative animation but I guess this animation is a JS animation. Perhaps this here:

https://searchfox.org/mozilla-central/rev/35cc00a25c4471993fdaa5761952bd3afd4f1731/toolkit/content/widgets/scrollbox.xml#101-122

Dão is that right?

Flags: needinfo?(dao+bmo)

Tom, any ideas how this should work? Are there other reports of JS animations becoming janky with RFP after that bug?

Flags: needinfo?(tom)

No other reports. In most callsites we check the system principal and don't reduce in that case. I don't have such a condition in rAF - I'll have to see how to add it there.

Pushed by tritter@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c38b3c03d21f
Do not reduce the precision of the requestAnimationFrame timestamp if we are in the System Principal Context r=birtles
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
Flags: needinfo?(dao+bmo)
Flags: qe-verify+

Confirmed issue with 71.0a1(20191002214349) on Windows 10.
Fix verified with 71.0b8 on Windows 10, macOS 10.13.6, Ubuntu 18.04.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.