Chromium Code Reviews| Index: third_party/WebKit/Source/core/layout/LayoutBox.cpp |
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBox.cpp b/third_party/WebKit/Source/core/layout/LayoutBox.cpp |
| index 5ebf1b6cbcdb5e3a88e03274d743659dfdd54307..5cf983a5aec154f4cb1dd002c8bc4a3df5f0db85 100644 |
| --- a/third_party/WebKit/Source/core/layout/LayoutBox.cpp |
| +++ b/third_party/WebKit/Source/core/layout/LayoutBox.cpp |
| @@ -1200,8 +1200,8 @@ bool LayoutBox::MapVisualRectToContainer( |
| // 2. Container offset. |
| // 3. Container scroll offset. |
| // 4. Perspective applied by container. |
| - // 5. Transform flattening. |
| - // 6. Expansion for pixel snapping. |
| + // 5. Expansion for pixel snapping. |
| + // 6. Transform flattening. |
| // 7. Container clip. |
| // 1. Transform. |
| @@ -1237,11 +1237,8 @@ bool LayoutBox::MapVisualRectToContainer( |
| transform = perspective_matrix * transform; |
| } |
| - // 5. Transform flattening. |
| - transform_state.ApplyTransform(transform, accumulation); |
| - |
| - // 6. Expansion for pixel snapping. |
| - // Use enclosingBoundingBox because we cannot properly compute pixel |
| + // 5. Expansion for pixel snapping. |
| + // Use EnclosingBoundingBox because we cannot properly compute pixel |
| // snapping for painted elements within the transform since we don't know |
| // the desired subpixel accumulation at this point, and the transform may |
| // include a scale. |
| @@ -1251,6 +1248,13 @@ bool LayoutBox::MapVisualRectToContainer( |
| FloatQuad(transform_state.LastPlanarQuad().EnclosingBoundingBox())); |
|
Xianzhu
2017/04/28 19:35:27
I'm not sure if this is correct:
1. Is it OK to fl
|
| } |
| + // 6. Transform flattening. |
| + transform_state.ApplyTransform(transform, accumulation); |
| + if (!preserve3D) { |
| + transform_state.Flatten(); |
| + transform_state.SetQuad(FloatQuad(transform_state.LastPlanarQuad())); |
| + } |
| + |
| // 7. Container clip. |
| if (container_object->IsBox() && container_object != ancestor && |
| container_object->HasClipRelatedProperty()) { |