How many on-screen pixels one of the element's own layout pixels is drawn as.
The phone is drawn through a transform: scale() (Settings > Display > Phone Size), and a
drag has one foot on each side of it: clientX/clientY are on-screen pixels, while
scrollTop, a CSS transform or an SVG coordinate are in the element's own unscaled ones.
Applied 1:1, a phone drawn at 75% moves content three quarters as far as the cursor, so the
grab visibly slides out from under the pointer. Divide a client-pixel delta by this.
Measured off the element rather than read from a setting, so it is right for any transform in the ancestry and not only the one the phone applies. Zero on either side means nothing is laid out yet — jsdom, or an element not in the document — and answers 1: no correction.
A scale-corrected pointer drag, and the measurement under it (MICA-294).
The phone is drawn through a
transform: scale(), so a drag that applies client-pixel deltas 1:1 slides out from under the pointer at any size but 100%. The shell has always corrected for that; an app could not, because the shell's gestures are not the SDK's, and Places carried a private copy of the measurement to pan its map. Same kind of thing asfocusTrapabove — DOM behaviour, no host, no permission — so it lives here and reaches both barrels.sdk/lib/pointerDrag.tshas why it is deliberately not a facet.