Open Bug 1790988 Opened 3 years ago Updated 1 year ago

Resist-fingerprinting letterboxing causes pointer lock to drift when moving mouse cursor

Categories

(Core :: DOM: UI Events & Focus Handling, defect)

Firefox 106
defect

Tracking

()

Tracking Status
firefox106 --- affected
firefox136 --- affected

People

(Reporter: ke5trel, Unassigned)

References

(Blocks 2 open bugs)

Details

Attachments

(1 file)

STR:

  1. Set privacy.resistFingerprinting.letterboxing = true.
  2. Visit https://mdn.github.io/dom-examples/pointer-lock/.
  3. Resize window so that the letterbox areas are different sizes.
  4. Click in the pointer lock zone.
  5. Move mouse cursor in small circles.

Expected:

Red ball remains in same space.

Actual:

Red ball drifts slowly to one side depending on letterbox size.

Does not happen with letterboxing disabled.

Severity: -- → S3

the pointer coordinates are being taken from the inner window rather than the viewport. Firefox (not Tor Browser) centers vertically. Both center horizontally.

Create a letterbox that has e.g. 10px matt to the left and 10px matt above and just click the mouse once to watch the red ball move on its own (diagonally and down). When it crosses the x or y threshold, you can see the coordinate is -10 (for example)

this is solved with using Tor Browser's css grid LBing which is in the process of being uplifted - not usre which bugzilla cc cc piero

Flags: needinfo?(pierov)

Bug 1556016, but I haven't checked if this solves the problem.

Flags: needinfo?(pierov)

but I haven't checked if this solves the problem.

Well, I don't see what else it could be :)

See Also: → 1556016

OK, it still drifts after Bug 1556016 (not to be confused with sub-pixel drift issues in Bug 1630462). The drift is proportional and directional based on the letterbox matte, so something somewhere is using the "real"/"non-LB" inner window co-ordinates vs the LB points

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: