DescriptionMerge 139479
> RenderGeometryMap and TransformState disagree with sub-pixel layout and translations
> https://bugs.webkit.org/show_bug.cgi?id=106047
>
> Reviewed by Simon Fraser.
>
> Source/WebCore:
>
> Mirror RenderGeometryMap's optimization for integer-translated transforms in TransformState.
> This avoids the current behavior where the two can disagree on mappings, since RenderGeometryMap
> pixel-snapped later when a translation occurred between two sub-pixel containers.
>
> Test: fast/layers/geometry-map-transform-state-translation-mismatch.html
>
> * platform/graphics/transforms/TransformState.h:
> (WebCore::TransformState::setQuad): Clear accumulatedOffset when setting a new quad. Note: this
> implementation only works properly when only tracking a quad.
> * platform/graphics/transforms/TransformState.cpp:
> (WebCore::TransformState::applyTransform): apply integral translations to the accumulatedOffset
> for performance and consistency with RenderGeometryMap.
>
> LayoutTests:
>
> * fast/layers/geometry-map-transform-state-translation-mismatch-expected.txt: Added.
> * fast/layers/geometry-map-transform-state-translation-mismatch.html: Added.
>
TBR=leviw@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=139620
Patch Set 1 #
Messages
Total messages: 1 (0 generated)
|