Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(162)

Issue 1148763002: Invalidate SVG filter display items on subtree modification (Closed)

Created:
5 years, 7 months ago by pdr.
Modified:
5 years, 7 months ago
Reviewers:
chrishtr, fs
CC:
blink-reviews, blink-reviews-rendering, krit, eae+blinkwatch, f(malita), fs, gyuyoung2, jchaffraix+rendering, kouhei+svg_chromium.org, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, pdr+svgwatchlist_chromium.org, rwlbuis, Stephen Chennney, szager+layoutwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Invalidate SVG filter display items on subtree modification When an SVG filtered subtree is modified, the SVGFilter display item needs to be invalidated. For example: <g filter='url(#filter)'> <rect ...> </g> This example will generate a display item list of a single SVGFilter display item for the <g> because the <rect> subtree will be drawn as an SkPicture as part of the filter. If the <rect> is changed, we need to invalidate the SVGFilter display item. Without this patch, we would re-use the (stale) cached SVGFilter display item. With this change, we should be able to remove the filter caching entirely in a followup and rely on the display list. BUG=451606 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=195645

Patch Set 1 #

Patch Set 2 : Fix comment #

Total comments: 2

Patch Set 3 : Invalidate bounds as well as paint, fix flakiness in test #

Patch Set 4 : Upload correct patch this time #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+65 lines, -21 lines) Patch
M LayoutTests/TestExpectations View 1 chunk +0 lines, -6 lines 0 comments Download
M LayoutTests/svg/filters/filter-refresh.svg View 1 2 1 chunk +1 line, -1 line 2 comments Download
A + LayoutTests/virtual/slimmingpaint/svg/custom/use-disappears-after-style-update-expected.txt View 1 chunk +9 lines, -8 lines 0 comments Download
M LayoutTests/virtual/slimmingpaint/svg/filters/filter-refresh-expected.txt View 2 chunks +34 lines, -0 lines 0 comments Download
A + LayoutTests/virtual/slimmingpaint/svg/repaint/filter-child-repaint-expected.txt View 1 chunk +4 lines, -2 lines 0 comments Download
A + LayoutTests/virtual/slimmingpaint/svg/repaint/paintorder-filtered-expected.txt View 2 chunks +7 lines, -3 lines 0 comments Download
M Source/core/layout/svg/LayoutSVGResourceFilter.cpp View 1 2 3 2 chunks +10 lines, -1 line 0 comments Download

Messages

Total messages: 8 (2 generated)
pdr.
5 years, 7 months ago (2015-05-20 07:40:11 UTC) #2
fs
https://codereview.chromium.org/1148763002/diff/20001/Source/core/layout/svg/LayoutSVGResourceFilter.cpp File Source/core/layout/svg/LayoutSVGResourceFilter.cpp (right): https://codereview.chromium.org/1148763002/diff/20001/Source/core/layout/svg/LayoutSVGResourceFilter.cpp#newcode98 Source/core/layout/svg/LayoutSVGResourceFilter.cpp:98: invalidation = PaintInvalidation; So this means that boundaries are ...
5 years, 7 months ago (2015-05-20 09:29:38 UTC) #3
pdr.
PTAL https://codereview.chromium.org/1148763002/diff/20001/Source/core/layout/svg/LayoutSVGResourceFilter.cpp File Source/core/layout/svg/LayoutSVGResourceFilter.cpp (right): https://codereview.chromium.org/1148763002/diff/20001/Source/core/layout/svg/LayoutSVGResourceFilter.cpp#newcode98 Source/core/layout/svg/LayoutSVGResourceFilter.cpp:98: invalidation = PaintInvalidation; On 2015/05/20 at 09:29:38, fs ...
5 years, 7 months ago (2015-05-20 21:09:27 UTC) #4
fs
lgtm https://codereview.chromium.org/1148763002/diff/60001/LayoutTests/svg/filters/filter-refresh.svg File LayoutTests/svg/filters/filter-refresh.svg (right): https://codereview.chromium.org/1148763002/diff/60001/LayoutTests/svg/filters/filter-refresh.svg#newcode15 LayoutTests/svg/filters/filter-refresh.svg:15: <set attributeName="x" to="0" /> On 2015/05/20 21:09:27, pdr ...
5 years, 7 months ago (2015-05-20 21:57:08 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1148763002/60001
5 years, 7 months ago (2015-05-20 21:59:16 UTC) #7
commit-bot: I haz the power
5 years, 7 months ago (2015-05-20 23:32:59 UTC) #8
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=195645

Powered by Google App Engine
This is Rietveld 408576698