static void RecenterDisplayPort(mozilla::layers::FrameMetrics& aFrameMetrics) { LayerMargin margins = aFrameMetrics.GetDisplayPortMargins(); margins.right = margins.left = margins.LeftRight() / 2; margins.top = margins.bottom = margins.TopBottom() / 2; aFrameMetrics.SetDisplayPortMargins(margins); }
static void AdjustDisplayPortForScrollDelta(mozilla::layers::FrameMetrics& aFrameMetrics, const CSSPoint& aActualScrollOffset) { // Correct the display-port by the difference between the requested scroll // offset and the resulting scroll offset after setting the requested value. LayerPoint shift = (aFrameMetrics.GetScrollOffset() - aActualScrollOffset) * aFrameMetrics.LayersPixelsPerCSSPixel(); LayerMargin margins = aFrameMetrics.GetDisplayPortMargins(); margins.left -= shift.x; margins.right += shift.x; margins.top -= shift.y; margins.bottom += shift.y; aFrameMetrics.SetDisplayPortMargins(margins); }