New issue
Advanced search Search tips

Issue 660195 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Better detection of geometry change for paint invalidation

Project Member Reported by wangxianzhu@chromium.org, Oct 27 2016

Issue description

For now we check changes of paint invalidation rect for all objects and border box size, layout overflow rect and content box rect for LayoutBoxes, for paint invalidation caused by layout change.

Checking change of paint invalidation rect has the following problems:
- We may inflate a paint invalidation rect to cover shifted pixels caused by pixel snapping. This hides some subpixel changes of geometries which may also need paint invalidation;
- Some checks may be redundant.

 
A test case showing under-invalidation on sub-pixel size change.
resize-subpixel.html
573 bytes View Download
Project Member

Comment 2 by bugdroid1@chromium.org, Oct 29 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fbb39cf2f2de761f01d273049c150719a231cdff

commit fbb39cf2f2de761f01d273049c150719a231cdff
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Sat Oct 29 01:58:26 2016

Use LayoutBox::paintedOutputOfObjectHasNoEffectregardlessOfSize() for SVGRoot

Previously LayoutSVGRoot inherited the function from LayoutReplaced
which assumes the object always has something to paint for itself
and always returns false. However, LayoutSVGRoot should use the
same rule as LayoutBox. When a LayoutSVGRoot doesn't have box
decorations, it doesn't need any paint invalidation for itself.

BUG= 660195 

Review-Url: https://codereview.chromium.org/2460983002
Cr-Commit-Position: refs/heads/master@{#428588}

[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/clip-path-child-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/clip-path-id-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/clip-path-units-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/hairline-stroke-squarecap-expected.txt
[rename] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/image-with-clip-path-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/invalidate-on-child-layout-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-late-marker-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-late-mask-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-repaint-rect-on-path-with-stroke-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-bounce-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-container-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-image-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-polygon-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-polygon-removal-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-style-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-transform-addition-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/js-update-transform-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/marker-strokeWidth-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/marker-viewBox-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/mask-invalidation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/modify-inserted-listitem-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/outline-offset-shape-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/repaint-stroke-width-changes-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/resource-invalidate-on-target-update-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/rounded-rect-height-change-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/svg-image-par-resize-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/transform-changed-state-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/transform-foreign-object-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/paint/invalidation/svg/transform-text-element-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/animated-path-inside-transformed-html-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/ems-display-none-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/exs-display-none-expected.txt
[delete] https://crrev.com/407a59a4369bbd1915d50d74dc18a12e3e102539/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/image-with-clip-path-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/js-late-clipPath-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/js-late-clipPath-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/js-late-gradient-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/js-late-pattern-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/outline-offset-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/remove-text-node-from-tspan-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/repaint-non-scaling-stroke-text-decoration-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/repaint-non-scaling-stroke-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/tabgroup-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-mask-update-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-repaint-including-stroke-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-xy-updates-SVGList-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/tspan-dynamic-positioning-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/animated-path-inside-transformed-html-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/ems-display-none-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/exs-display-none-expected.txt
[delete] https://crrev.com/407a59a4369bbd1915d50d74dc18a12e3e102539/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/image-with-clip-path-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/js-late-clipPath-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/js-late-clipPath-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/js-late-gradient-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/js-late-pattern-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/modify-transferred-listitem-different-attr-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/outline-offset-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/remove-text-node-from-tspan-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/repaint-non-scaling-stroke-text-decoration-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/repaint-non-scaling-stroke-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/tabgroup-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-mask-update-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-repaint-including-stroke-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-xy-updates-SVGList-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/tspan-dynamic-positioning-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/animated-path-inside-transformed-html-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/ems-display-none-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/exs-display-none-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/js-late-clipPath-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/js-late-clipPath-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/js-late-gradient-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/js-late-pattern-and-object-creation-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/modify-transferred-listitem-different-attr-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/outline-offset-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/remove-text-node-from-tspan-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/repaint-non-scaling-stroke-text-decoration-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/repaint-non-scaling-stroke-text-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/tabgroup-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-mask-update-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-repaint-including-stroke-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-viewbox-rescale-expected.png
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-xy-updates-SVGList-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/tspan-dynamic-positioning-expected.txt
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/Source/core/layout/LayoutReplaced.h
[modify] https://crrev.com/fbb39cf2f2de761f01d273049c150719a231cdff/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.h

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 29 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e785d3b4de4914b3a8b773a93596c299937f3770

commit e785d3b4de4914b3a8b773a93596c299937f3770
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Sat Oct 29 04:11:02 2016

Replace coversExtraPixels with simpler logic and remove transform workaround

Replace coversExtraPixels with simpler logic by comparing paint invalidation
rect to LayoutRect(paintInvalicationLocation, size()), and if either changed
and they don't equal, do full paint invalidation instead of incremental
invalidation. This covers the following cases in which incremental
invalidation doesn't apply:

- extra pixels covered by enclosingIntRect() during mapping,
- transforms such as rotate and skew,
- overflowing effects.

This also covers an extra case that we did incremental invalidation but
now do full paint invalidation:
- clipped paint invalidation rect when either borer box or clip changes.
Based on layout tests, 1 not a common case, and this is also not an issue of
spv2 because we won't clip visual rects.

BUG= 660195 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2457023002
Cr-Commit-Position: refs/heads/master@{#428596}

[add] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/resize-mask-expected.html
[add] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/resize-mask.html
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/resize-skewed-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/resize-with-border-clipped-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/scrolled-iframe-scrollbar-change-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/paint/invalidation/subtree-layoutstate-transform-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/line-flow-with-floats-2-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/subtree-layoutstate-transform-expected.txt
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/layout/LayoutObject.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/layout/LayoutObject.h
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.h
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/BoxPaintInvalidatorTest.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/ObjectPaintInvalidator.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/e785d3b4de4914b3a8b773a93596c299937f3770/third_party/WebKit/Source/core/paint/PaintInvalidator.h

Project Member

Comment 4 by bugdroid1@chromium.org, Nov 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4091f74e621de0fc0d59bfb30311c7a04a51cd8b

commit 4091f74e621de0fc0d59bfb30311c7a04a51cd8b
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Tue Nov 01 07:24:30 2016

Fix under-invalidation on SVG shape/image resize in subpixels

Previously we detected SVG shape/image geometry changes for paint
invalidation by checking change of paint invalidation bounds. This
is accurate because the bounds may be expanded to hide subpixel
changes.

Now mark the object for full paint invalidation during layout if
geometry changes.

BUG= 660195 

Review-Url: https://codereview.chromium.org/2458233002
Cr-Commit-Position: refs/heads/master@{#428956}

[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-content-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-image-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[add] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/resize-image-subpixel-expected.html
[add] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/resize-image-subpixel.html
[add] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/resize-shape-subpixel-expected.html
[add] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/resize-shape-subpixel.html
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/paint/invalidation/svg/rounded-rect-height-change-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-content-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-image-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/Source/core/layout/svg/LayoutSVGImage.cpp
[modify] https://crrev.com/4091f74e621de0fc0d59bfb30311c7a04a51cd8b/third_party/WebKit/Source/core/layout/svg/LayoutSVGShape.cpp

Project Member

Comment 5 by bugdroid1@chromium.org, Nov 5 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/31922c6cd1181c77ae039adf22243cae6ca526f3

commit 31922c6cd1181c77ae039adf22243cae6ca526f3
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Sat Nov 05 00:40:33 2016

Move LayoutObject::m_previousPosition... into a global map in ObjectPaintInvalidator

Save the field in a global map in ObjectPaintInvalidator only when:
- the object is not a LayoutText (because checking change of visual
  rect suffices to detect layout caused invalidation);
- the location is different from visual rect location (if they are
  same, we can just get previous location from previous visual rect)

Also renamed the field to previousLocationInBacking.

Stat shows that only 4.6% of all LayoutObjects need to save the previous
location (https://ct.skia.org/chromium_perf_runs/ run 1436).

This makes space for storing previous paint offset for all objects,
which is needed by incremental paint property tree update, and paint
offset change detection.

BUG= 660195 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2476813002
Cr-Commit-Position: refs/heads/master@{#430095}

[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/layout/LayoutObject.cpp
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/layout/LayoutObject.h
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/paint/ObjectPaintInvalidator.cpp
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/paint/ObjectPaintInvalidator.h
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/31922c6cd1181c77ae039adf22243cae6ca526f3/third_party/WebKit/Source/core/paint/PaintInvalidator.h

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 8 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168

commit 2902b7fc2999ea4c1f3f647be6f3029ee7e3e168
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Tue Nov 08 01:03:57 2016

Separate forced subtree invalidation reasons for location change and SVG resource change

This has several purposes:

- To reduce layout test result differences between normal path and
  SlimmingPaintInvalidation which will add paint offset change detection
  soon.

- To avoid unnecessary invalidation of SVG display item clients when
  an non-SVG/SVG-root ancestor changed location. Previously we
  conservatively assumed paint offsets of all descendants changed if
  an ancestor is set forcedSubtreeInvalidationCheckion when the
  ancestor's location changed, but normal SVG object always have
  zero paint offsets which won't change.

- For SlimmingPaintInvalidation to explicitly invalidate display item
  clients on ancestor SVG resource change. Previously this logic was
  shadowed by the convervative paint offset change logic.

BUG= 660195 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2483953002
Cr-Commit-Position: refs/heads/master@{#430453}

[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=SlimmingPaintInvalidation/paint/invalidation/svg/paintorder-filtered-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=SlimmingPaintInvalidation/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/filter-child-repaint-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/filter-refresh-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/image-with-clip-path-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/paintorder-filtered-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/resource-client-removal-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/text-pattern-update-2-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/text-pattern-update-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/tspan-pattern-update-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/paint/invalidation/svg/use-setAttribute-crash-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/svg/use-setAttribute-crash-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/inner-svg-change-viewPort-relative-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/svg/text-viewbox-rescale-expected.txt
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/Source/core/paint/ObjectPaintInvalidator.cpp
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/2902b7fc2999ea4c1f3f647be6f3029ee7e3e168/third_party/WebKit/Source/core/paint/PaintInvalidator.h

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 11 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6cd03514645fe54b0c2010e51a8adfdce7646db4

commit 6cd03514645fe54b0c2010e51a8adfdce7646db4
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Fri Nov 11 00:23:05 2016

Move clearPaintInvalidatinFlags after subtree walk

This allows we change paint invalidation flags using
setShouldDoFullPaintInvalidation() etc. during paint invalidation to
deal with some complex situations, for example:
- https://codereview.chromium.org/2430313004/ which sets paint
  invalidation flag in LayoutTable::recalcCollapsedBordersIfNeeded().

Previously we clear flags before walking subtrees. If some descendant
set paint invalidation flags, we would also set flags along the ancestor
path causing dirty flags after paint invalidation.

This will be needed by several bug fixes and cleanups of paint
invalidation.

Also removed some redundant checks of slimmingPaintInvalidationEnabled
in PrePaintTreeWalker.

BUG= 660195 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2488343002
Cr-Commit-Position: refs/heads/master@{#431402}

[modify] https://crrev.com/6cd03514645fe54b0c2010e51a8adfdce7646db4/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp
[modify] https://crrev.com/6cd03514645fe54b0c2010e51a8adfdce7646db4/third_party/WebKit/Source/core/layout/LayoutObject.cpp
[modify] https://crrev.com/6cd03514645fe54b0c2010e51a8adfdce7646db4/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/6cd03514645fe54b0c2010e51a8adfdce7646db4/third_party/WebKit/Source/core/paint/PrePaintTreeWalk.cpp

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 11 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4a4980562262f80dfb66739d84c49251164ac373

commit 4a4980562262f80dfb66739d84c49251164ac373
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Fri Nov 11 17:56:39 2016

[SPInvalidation/SPv2] Track paint offset change

This is for paint invalidation and partial paint property tree update.

For SPv2 paint invalidation this can replace the old workarounds. It
doesn't work for SPv1 paint invalidation (even slimmingPaintInvalidation)
because PaintPropertyTreeBuilder disregards paint invalidation
containers when calculating paint offsets.

BUG= 660195 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2489893002
Cr-Commit-Position: refs/heads/master@{#431591}

[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/layout/LayoutObject.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/layout/LayoutObject.h
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/BlockPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/BoxPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/BoxPainter.h
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/FrameSetPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/InlinePainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/ObjectPaintInvalidator.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/ObjectPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/ObjectPainter.h
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/PaintInvalidator.h
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/PartPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/ReplacedPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/SVGRootPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/TableRowPainter.cpp
[modify] https://crrev.com/4a4980562262f80dfb66739d84c49251164ac373/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bf9526786aab6e8317e015249f88cca8b44cac35

commit bf9526786aab6e8317e015249f88cca8b44cac35
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Mon Nov 14 22:44:02 2016

Remove logic forcing paint invalidation with non-composited scrollbars

The logic has been unnecessary since we had PaintInvalidationCapableScrollableArea
which invalidates old and new visual rects of scrollbars.

This can reduce paint invalidation differences between RLS and non-RLS
about LayoutViews.

BUG= 660195 
TEST=paint/invalidation/resize-scrollable-div.html
TEST=paint/invalidation/scrollbar-invalidation-on-resize.html
TEST=paint/invalidation/scrollbar-invalidation-on-resize-with-border.html
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2497413002
Cr-Commit-Position: refs/heads/master@{#431927}

[modify] https://crrev.com/bf9526786aab6e8317e015249f88cca8b44cac35/third_party/WebKit/LayoutTests/paint/invalidation/resize-scrollable-div-expected.txt
[modify] https://crrev.com/bf9526786aab6e8317e015249f88cca8b44cac35/third_party/WebKit/LayoutTests/paint/invalidation/scrollbar-invalidation-on-resize-expected.txt
[modify] https://crrev.com/bf9526786aab6e8317e015249f88cca8b44cac35/third_party/WebKit/LayoutTests/paint/invalidation/scrollbar-invalidation-on-resize-with-border-expected.txt
[modify] https://crrev.com/bf9526786aab6e8317e015249f88cca8b44cac35/third_party/WebKit/Source/core/paint/BoxPaintInvalidator.cpp

Status: Fixed (was: Assigned)

Sign in to add a comment