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

Issue 1545713003: Add StylePath and use it to store 'd' in ComputedStyle (Closed)

Created:
5 years ago by fs
Modified:
4 years, 11 months ago
Reviewers:
pdr., Eric Willigers
CC:
darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-animation_chromium.org, blink-reviews-css, blink-reviews-style_chromium.org, chromium-reviews, dglazkov+blink, krit, Eric Willigers, f(malita), gyuyoung2, kouhei+svg_chromium.org, pdr+svgwatchlist_chromium.org, rjwright, rwlbuis, Stephen Chennney, shans
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add StylePath and use it to store 'd' in ComputedStyle This adds a new class StylePath, that wraps a SVGPathByteStream and a Path to be used when painting et.c. Create a StylePath on-demand from CSSPathValue, and then cache the resulting value. This allows sharing the various levels of path-data between different instances/elements. It also avoids eagerly constructing the Path object at setAttribute-time. To be able to achieve this, SVGPathByteStream is made to be reference- counted. BUG=535429 Committed: https://crrev.com/f94944ad723e8a0cbee71258960394d17f32adef Cr-Commit-Position: refs/heads/master@{#368320}

Patch Set 1 #

Patch Set 2 : Slightly less coupled. #

Patch Set 3 : Restore CSSPathValue::equals. #

Total comments: 4

Patch Set 4 : 2015->2016; Remove unnecessary explicit. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+178 lines, -61 lines) Patch
M third_party/WebKit/Source/core/animation/SVGPathInterpolationType.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/animation/animatable/AnimatablePath.h View 1 1 chunk +8 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/animation/animatable/AnimatablePath.cpp View 1 3 chunks +12 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/animation/css/CSSAnimatableValueFactory.cpp View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/core.gypi View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/css/CSSPathValue.h View 1 2 3 2 chunks +8 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/core/css/CSSPathValue.cpp View 1 2 2 chunks +20 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/css/resolver/AnimatedStyleBuilder.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.h View 1 2 chunks +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/css/resolver/StyleBuilderConverter.cpp View 1 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/style/ComputedStyle.h View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/style/SVGComputedStyle.h View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/style/SVGComputedStyleDefs.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/style/SVGComputedStyleDefs.cpp View 1 chunk +1 line, -1 line 0 comments Download
A third_party/WebKit/Source/core/style/StylePath.h View 1 2 3 1 chunk +42 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/style/StylePath.cpp View 1 2 3 1 chunk +50 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/svg/SVGPath.cpp View 1 6 chunks +9 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/core/svg/SVGPathByteStream.h View 1 2 chunks +7 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/svg/SVGPathElement.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 14 (6 generated)
fs
Something someone just couldn't leave alone... Hopefully this doesn't add complication to the AnimatablePath -> ...
4 years, 11 months ago (2016-01-07 14:03:00 UTC) #4
pdr.
LGTM! It's belated, but a nice christmas present :) Please wait for Eric's LGTM as ...
4 years, 11 months ago (2016-01-07 19:47:01 UTC) #5
fs
On 2016/01/07 at 19:47:01, pdr wrote: > LGTM! It's belated, but a nice christmas present ...
4 years, 11 months ago (2016-01-07 20:06:15 UTC) #6
Eric Willigers
lgtm with nit https://codereview.chromium.org/1545713003/diff/40001/third_party/WebKit/Source/core/css/CSSPathValue.h File third_party/WebKit/Source/core/css/CSSPathValue.h (right): https://codereview.chromium.org/1545713003/diff/40001/third_party/WebKit/Source/core/css/CSSPathValue.h#newcode36 third_party/WebKit/Source/core/css/CSSPathValue.h:36: explicit CSSPathValue(PassRefPtr<SVGPathByteStream>, StylePath*); No need for ...
4 years, 11 months ago (2016-01-08 11:58:58 UTC) #7
fs
https://codereview.chromium.org/1545713003/diff/40001/third_party/WebKit/Source/core/css/CSSPathValue.h File third_party/WebKit/Source/core/css/CSSPathValue.h (right): https://codereview.chromium.org/1545713003/diff/40001/third_party/WebKit/Source/core/css/CSSPathValue.h#newcode36 third_party/WebKit/Source/core/css/CSSPathValue.h:36: explicit CSSPathValue(PassRefPtr<SVGPathByteStream>, StylePath*); On 2016/01/08 at 11:58:58, Eric Willigers ...
4 years, 11 months ago (2016-01-08 12:14:27 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1545713003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1545713003/60001
4 years, 11 months ago (2016-01-08 13:24:02 UTC) #11
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 11 months ago (2016-01-08 13:29:57 UTC) #12
commit-bot: I haz the power
4 years, 11 months ago (2016-01-08 13:30:51 UTC) #14
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/f94944ad723e8a0cbee71258960394d17f32adef
Cr-Commit-Position: refs/heads/master@{#368320}

Powered by Google App Engine
This is Rietveld 408576698