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

Issue 2303703002: Revamp filter primitive region calculations for Filter Effects (Closed)

Created:
4 years, 3 months ago by fs
Modified:
4 years, 3 months ago
Reviewers:
haraken, pdr., Stephen White
CC:
ajuma+watch_chromium.org, ajuma+watch-canvas_chromium.org, blink-reviews, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), gyuyoung2, jbroman, Justin Novosad, kouhei+svg_chromium.org, pdr+graphicswatchlist_chromium.org, pdr+svgwatchlist_chromium.org, rwlbuis, Stephen Chennney, slimming-paint-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Reland of Revamp filter primitive region calculations for Filter Effects This moves the filter primitive region calculation to SVGFilterPrimitiveStandardAttributes::setStandardAttributes, folding in FilterEffect::applyEffectBoundaries and getting rid of FilterEffect::m_effectBoundaries and related flags. What's left of FilterEffect::determineFilterPrimitiveSubregion() is renamed to determineMaximumEffectRect(), and callsites updated. BUG=642035 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/a78880d5bb7841a01338696739316fe0ba56c810 Cr-Commit-Position: refs/heads/master@{#416537}

Patch Set 1 #

Patch Set 2 : Fix FETile w/ SourceGraphic input #

Patch Set 3 : New baselines #

Total comments: 8

Patch Set 4 : absoluteInputUnion #

Patch Set 5 : Strip baselines #

Patch Set 6 : Baselines again; Manual for mac10.11-retina #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+107 lines, -109 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/css3/filters/feoffset-region-zoom-expected.html View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-all-on-background-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-colorspace-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-ordering-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/css3/filters/effect-reference-zoom-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-all-on-background-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-colorspace-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-ordering-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-zoom-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/css3/filters/effect-reference-zoom-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-all-on-background-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-colorspace-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-ordering-hw-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-zoom-expected.png View 1 2 5 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/css3/filters/effect-reference-zoom-hw-expected.png View 1 2 5 Binary file 0 comments Download
A third_party/WebKit/LayoutTests/platform/win7/css3/filters/effect-reference-hw-expected.png View 1 2 3 4 5 Binary file 0 comments Download
M third_party/WebKit/Source/core/paint/FilterPainter.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/SVGFilterPainter.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.h View 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp View 1 1 chunk +42 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DState.cpp View 1 2 3 1 chunk +8 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/filters/FETile.cpp View 1 1 chunk +6 lines, -2 lines 2 comments Download
M third_party/WebKit/Source/platform/graphics/filters/FETurbulence.cpp View 1 chunk +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h View 1 5 chunks +4 lines, -31 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/filters/FilterEffect.cpp View 1 2 3 3 chunks +33 lines, -52 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/filters/SkiaImageFilterBuilder.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 49 (34 generated)
fs
Ok, I think this is ready to go now. Changes to tests are because the ...
4 years, 3 months ago (2016-09-01 21:47:52 UTC) #16
pdr.
LGTM, much nicer and matches Gecko https://codereview.chromium.org/2303703002/diff/40001/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp File third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp (right): https://codereview.chromium.org/2303703002/diff/40001/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp#newcode118 third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp:118: // special-case the ...
4 years, 3 months ago (2016-09-03 04:50:04 UTC) #19
fs
https://codereview.chromium.org/2303703002/diff/40001/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp File third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp (right): https://codereview.chromium.org/2303703002/diff/40001/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp#newcode118 third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp:118: // special-case the percentages are relative to the dimensions ...
4 years, 3 months ago (2016-09-04 09:34:25 UTC) #22
fs
On 2016/09/03 at 04:50:04, pdr wrote: > LGTM, much nicer and matches Gecko Additional LGTM ...
4 years, 3 months ago (2016-09-04 12:12:43 UTC) #25
haraken
On 2016/09/04 12:12:43, fs wrote: > On 2016/09/03 at 04:50:04, pdr wrote: > > LGTM, ...
4 years, 3 months ago (2016-09-04 12:22:10 UTC) #26
fs
On 2016/09/04 at 12:22:10, haraken wrote: > On 2016/09/04 12:12:43, fs wrote: > > On ...
4 years, 3 months ago (2016-09-04 12:54:11 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2303703002/60001
4 years, 3 months ago (2016-09-04 12:54:29 UTC) #30
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 3 months ago (2016-09-04 12:58:26 UTC) #31
commit-bot: I haz the power
Patchset 4 (id:??) landed as https://crrev.com/59aa6aab66c0a3c12644d44c686c02d484814da6 Cr-Commit-Position: refs/heads/master@{#416472}
4 years, 3 months ago (2016-09-04 13:00:07 UTC) #33
Matt Giuca
A revert of this CL (patchset #4 id:60001) has been created in https://codereview.chromium.org/2313583002/ by mgiuca@chromium.org. ...
4 years, 3 months ago (2016-09-05 05:33:53 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2303703002/100001
4 years, 3 months ago (2016-09-05 12:45:35 UTC) #44
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 3 months ago (2016-09-05 12:49:57 UTC) #45
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/a78880d5bb7841a01338696739316fe0ba56c810 Cr-Commit-Position: refs/heads/master@{#416537}
4 years, 3 months ago (2016-09-05 12:51:28 UTC) #47
Stephen White
Post-landing LGTM. Great stuff! I'm really glad to see this cleaned up. https://codereview.chromium.org/2303703002/diff/100001/third_party/WebKit/Source/platform/graphics/filters/FETile.cpp File third_party/WebKit/Source/platform/graphics/filters/FETile.cpp ...
4 years, 3 months ago (2016-09-13 15:48:02 UTC) #48
fs
4 years, 3 months ago (2016-09-13 16:11:52 UTC) #49
Message was sent while issue was closed.
https://codereview.chromium.org/2303703002/diff/100001/third_party/WebKit/Sou...
File third_party/WebKit/Source/platform/graphics/filters/FETile.cpp (right):

https://codereview.chromium.org/2303703002/diff/100001/third_party/WebKit/Sou...
third_party/WebKit/Source/platform/graphics/filters/FETile.cpp:50: if
(inputEffect(0)->getFilterEffectType() == FilterEffectTypeSourceInput)
On 2016/09/13 at 15:48:02, Stephen White wrote:
> Would it not be possible to have make filterPrimitiveSubregion() virtual, and
have SourceGraphic return filterRegion() as its filterPrimitiveSubregion()? It
would allow us to eliminate the special case here. Or is that a bad idea for
other reasons?

I think that more general here would be to check clipsToBounds() (== has filter
primitive region), so specializing to SourceGraphic probably isn't necessarily
the right thing. (Also the filter [and hence region] of the source may differ
from the filter of the feTile in some cases.)

Powered by Google App Engine
This is Rietveld 408576698