History log of /external/skia/experimental/svg/model/SkSVGDOM.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ce8840e3842f3a702c5d7bf440ff730bdfaf8e70 08-Dec-2016 Florin Malita <fmalita@chromium.org> [SVGDom] ClipPath support

* clip-path attribute handling
* clipPath container element
* asPath() SkSVGNode virtual for capturing subtree geometry

R=robertphillips@google.com,stephana@google.com

Change-Id: I9597534fe3047b631da6309eafac055dff5696e9
Reviewed-on: https://skia-review.googlesource.com/5650
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
/external/skia/experimental/svg/model/SkSVGDOM.cpp
e932d4b3a99905a6272c5574f21ac651632f4e82 01-Dec-2016 Florin Malita <fmalita@chromium.org> [SVGDom] Add fill-rule support

There's a bit of friction with this attribute, because per spec it is
an inherited presentation attribute, but in Skia it is part of the
actual SkPath state.

So we must add some plumbing to SkSVGShape & friends to allow overriding
the fill type at render-time.

R=robertphillips@google.com,stephana@google.com

Change-Id: I9c926d653c6211beb3914bffac50d4349dbdd2c0
Reviewed-on: https://skia-review.googlesource.com/5415
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
/external/skia/experimental/svg/model/SkSVGDOM.cpp
e1baa7c105dad0f301ce34e5d6d1aa329334ef8c 14-Sep-2016 fmalita <fmalita@chromium.org> [SVGDom] Expose intrinsic size info

* expose intrinsic size info on <svg> nodes.

* tweak the SkSVGDOM constructor to no longer take an container size
param, but instead default to intrinsic size
* update clients to call SkSVGDOM::setContainerSize() explicitly, when
needed

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2345533002

Review-Url: https://codereview.chromium.org/2345533002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
ceb93abddc81ccc0b4f93d958135632ed4cebfd4 13-Sep-2016 fmalita <fmalita@chromium.org> [SVGDom] Linear gradient 'gradientTransform' support

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339533002

Review-Url: https://codereview.chromium.org/2339533002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
cecd617a4297ffdcec632ca7e2ed1e6b61665e04 13-Sep-2016 fmalita <fmalita@chromium.org> [SVGDom] Linear gradient 'spreadMethod' support

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337203002

Review-Url: https://codereview.chromium.org/2337203002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
28d5b72d86fdfae20dc47ba548748f119c7273e3 13-Sep-2016 fmalita <fmalita@chromium.org> [SVGDom] Initial linear gradient support

Kind of a big change, to connect several new bits into something useful:

* ID tracking & lookup
* new asPaint() node virtual to support shader (and in the future filter) based paint servers
* <defs>, <linearGradient> and <stop> element support
* 'href', 'offset', 'stop-color', 'stop-opacity' attribute support
* IRI/FuncIRI and rgb(...) parsing

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2327233003

Review-Url: https://codereview.chromium.org/2327233003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
d24ee1419f17fe3ac70373ca74136a766522e399 17-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add <line> support

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2244223005

Review-Url: https://codereview.chromium.org/2244223005
/external/skia/experimental/svg/model/SkSVGDOM.cpp
dc4c2a9fb7210925df7cc5c142b691e6c817ca77 17-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add <circle>, <ellipse> support

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2249033003

Review-Url: https://codereview.chromium.org/2249033003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
6fb0648c35aead138e65133c031d2b4fe5c8f0c7 15-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add opacity support

Group opacity support. Unlike the other presentation attributes we
support thus far, group opacity is not inherited.

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2246943002

Review-Url: https://codereview.chromium.org/2246943002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
ca39d716f10e75e3a2449262e67584f46d589c26 12-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] SVGPong sample app

Shows off SVG dom-based animations.

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2243853003

Review-Url: https://codereview.chromium.org/2243853003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
5b31f321fcc3bb7f2ed7cf31ff4b03901228594b 12-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] <polygon> & <polyline> support

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2235273003

Review-Url: https://codereview.chromium.org/2235273003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
2d961e086bb40b371b1a667536fa089794847368 11-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add more presentation attributes.

Implement proper presentation attribute inheritance, and add
support for

* fill-opacity
* stroke-linecap
* stroke-linejoin
* stroke-opacity
* stroke-width

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2234153002

Review-Url: https://codereview.chromium.org/2234153002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
286a8657da0364006e95cb0988477cc3a5f0e112 11-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add rx/ry support for <rect>

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2234863002

Review-Url: https://codereview.chromium.org/2234863002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
fea704e115f6298f629e9293c506a039af7db0eb 11-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Disable verbose parsing messages be default

Guard with SK_VERBOSE_SVG_PARSING

R=robertphillips@google.com,rmistry@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2235963003

Review-Url: https://codereview.chromium.org/2235963003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
61f36b37084e7b1c80cfc485825588604a401c9a 08-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Improve whitespace handling in style parsing

Handle whitespace-padded style names/values.

R=stephana@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2225623002

Review-Url: https://codereview.chromium.org/2225623002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
c97796b47b2f3e0ca8c04073c1576db21b58eedb 08-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Improved transform parsing

Update 'transform' attribute parsing to a more robust, SkSVGAttributeParser-based implementation.

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2220933003

Review-Url: https://codereview.chromium.org/2220933003
/external/skia/experimental/svg/model/SkSVGDOM.cpp
397a517d1a5774653fcdd08172f9a6b5eea67621 08-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Add viewBox support

The main feature is <svg> viewBox and proper viewport support, but the CL
touches a few other things:

* refactor SkSVGRenderContext to auto-restore canvas state, and split the
presentation bits into a separate CoW SkSVGPresentationContext

* introduce SkSVGNode::onPrepareToRender(), as a way for nodes to push their
custom state before the actual onRender() call (instead of relying on
non-virtual SkSVGNode to know about all possible state bits)

* add a "Type" suffix to SVG types, to disambiguate (e.g. SkSVGRectType vs.
SkSVGRect)

R=robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2222793002

Review-Url: https://codereview.chromium.org/2222793002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
bffc2566872f99d378a1113d0a49ec9ee0d60b7a 03-Aug-2016 fmalita <fmalita@chromium.org> [SVGDom] Initial SVGLength support

Mostly plumb new length types, but also introduce a stateful parser,
rect shape and named color support.

R=reed@google.com,robertphillips@google.com,stephana@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2202053002

Review-Url: https://codereview.chromium.org/2202053002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
58649ccc75c033ea4e0c9a664b4ed178816a50c6 29-Jul-2016 fmalita <fmalita@chromium.org> [SVGDom] Parse style attributes

Dispatch style-encoded (style="foo: bar; ...") attributes via normal
attribute setters.

R=reed@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2193663002

Review-Url: https://codereview.chromium.org/2193663002
/external/skia/experimental/svg/model/SkSVGDOM.cpp
6ceef3dd67617c5f4572ada98d5ee85777d2db99 27-Jul-2016 fmalita <fmalita@chromium.org> Initial SVG model

A minimal subset needed to render tiger.svg: <svg>, <g>, <path>, 'd', 'fill'/'stroke' (color-only), 'transform'.

R=reed@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2164193002

Review-Url: https://codereview.chromium.org/2164193002
/external/skia/experimental/svg/model/SkSVGDOM.cpp