| Index: LayoutTests/svg/dom/resources/svgtags.js
|
| diff --git a/LayoutTests/svg/dom/resources/svgtags.js b/LayoutTests/svg/dom/resources/svgtags.js
|
| index a7236ea5be1fad1268bb3e517e870cffd6520dab..406b22c6bcd6cbfb0c364416e5c301d83545e1ee 100644
|
| --- a/LayoutTests/svg/dom/resources/svgtags.js
|
| +++ b/LayoutTests/svg/dom/resources/svgtags.js
|
| @@ -1,69 +1,63 @@
|
| // A list of all SVG tags plus optional properties:
|
| // * needParent (string) - parent element required for a valid context
|
| -// * needChld (string list) - child element(s) required for a valid context
|
| +// * needChild (string list) - child element(s) required for a valid context
|
| // * needAttr (string map) - attribute(s) required for a valid context
|
| // * noRenderer (bool) - true if the element doesn't have an associated renderer
|
|
|
| var SvgTags = {
|
| a: { },
|
| - altGlyph: { },
|
| - altGlyphDef: { },
|
| - altGlyphItem: { },
|
| +// audio: { },
|
| animate: { noRenderer: true },
|
| - animateColor: { },
|
| - animateMotion: { },
|
| - animateTransform: { },
|
| + animateMotion: { noRenderer: true },
|
| + animateTransform: { noRenderer: true },
|
| +// canvas: { },
|
| circle: { },
|
| clipPath: { },
|
| - color_profile: { },
|
| - cursor: { },
|
| + cursor: { noRenderer: true },
|
| defs: { },
|
| desc: { noRenderer: true },
|
| + discard: { noRenderer: true },
|
| ellipse: { },
|
| feBlend: { needParent: 'filter' },
|
| feColorMatrix: { needParent: 'filter' },
|
| feComponentTransfer: { needParent: 'filter' },
|
| feComposite: { needParent: 'filter' },
|
| feConvolveMatrix: { needParent: 'filter', needAttr: { kernelMatrix: '0 0 0 0 0 0 0 0 0' } },
|
| - feDiffuseLighting: { needParent: 'filter', needChld: [ 'fePointLight' ] },
|
| + feDiffuseLighting: { needParent: 'filter', needChild: [ 'fePointLight' ] },
|
| feDisplacementMap: { needParent: 'filter' },
|
| feDistantLight: { needParent: 'feSpecularLighting' },
|
| - feDropShadow: { },
|
| + feDropShadow: { needParent: 'filter' },
|
| feFlood: { needParent: 'filter' },
|
| - feFuncA: { },
|
| - feFuncB: { },
|
| - feFuncG: { },
|
| - feFuncR: { },
|
| + feFuncA: { needParent: 'feComponentTransfer' },
|
| + feFuncB: { needParent: 'feComponentTransfer' },
|
| + feFuncG: { needParent: 'feComponentTransfer' },
|
| + feFuncR: { needParent: 'feComponentTransfer' },
|
| feGaussianBlur: { needParent: 'filter' },
|
| feImage: { needParent: 'filter' },
|
| - feMerge: { needParent: 'filter', needChld: [ 'feMergeNode' ] },
|
| + feMerge: { needParent: 'filter', needChild: [ 'feMergeNode' ] },
|
| feMergeNode: { needParent: 'feMerge' },
|
| feMorphology: { needParent: 'filter' },
|
| feOffset: { needParent: 'filter' },
|
| fePointLight: { needParent: 'feSpecularLighting' },
|
| - feSpecularLighting: { needParent: 'filter', needChld: [ 'fePointLight' ] },
|
| + feSpecularLighting: { needParent: 'filter', needChild: [ 'fePointLight' ] },
|
| feSpotLight: { needParent: 'feSpecularLighting' },
|
| feTile: { needParent: 'filter' },
|
| feTurbulence: { needParent: 'filter' },
|
| filter: { },
|
| - font: { },
|
| - font_face: { },
|
| - font_face_format: { },
|
| - font_face_name: { },
|
| - font_face_src: { },
|
| - font_face_uri: { },
|
| foreignObject: { },
|
| g: { },
|
| - glyph: { },
|
| - glyphRef: { },
|
| - hkern: { },
|
| +// hatch: { },
|
| +// hatchPath: { },
|
| +// iframe: { },
|
| image: { },
|
| line: { },
|
| linearGradient: { },
|
| marker: { },
|
| mask: { },
|
| +// meshGradient: { },
|
| +// meshPatch: { },
|
| +// meshRow: { },
|
| metadata: { noRenderer: true },
|
| - missing_glyph: { },
|
| mpath: { },
|
| path: { },
|
| pattern: { },
|
| @@ -71,75 +65,98 @@ var SvgTags = {
|
| polyline: { },
|
| radialGradient: { },
|
| rect: { },
|
| - script: { },
|
| + script: { noRenderer: true },
|
| set: { noRenderer: true },
|
| +// solidColor: { },
|
| +// source: { },
|
| stop: { },
|
| - style: { },
|
| + style: { noRenderer: true },
|
| svg: { },
|
| switch: { },
|
| symbol: { },
|
| text: { },
|
| textPath: { },
|
| +// track: { },
|
| title: { noRenderer: true },
|
| - tref: { },
|
| tspan: { },
|
| use: { },
|
| - view: { },
|
| - vkern: { },
|
| +// video: { },
|
| + view: { noRenderer: true },
|
| }
|
|
|
| // SVG element class shorthands as defined by the spec.
|
| var SvgTagClasses = {
|
| CLASS_ANIMATION: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermAnimationElement
|
| - 'animate', 'animateColor', 'animateMotion', 'animateTransform', 'set'
|
| - ],
|
| -
|
| - CLASS_BASIC_SHAPE: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermBasicShapeElement
|
| - 'circle', 'ellipse', 'line', 'polygon', 'polyline', 'rect'
|
| + // https://svgwg.org/svg2-draft/animate.html#TermAnimationElement
|
| + 'animate', 'animateMotion', 'animateTransform', 'discard', 'set'
|
| ],
|
|
|
| CLASS_CONTAINER: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermContainerElement
|
| - 'a', 'defs', 'glyph', 'g', 'marker', 'mask', 'missing-glyph', 'pattern', 'svg', 'switch',
|
| - 'symbol'
|
| + // https://svgwg.org/svg2-draft/struct.html#TermContainerElement
|
| + 'a', 'defs', 'g', 'marker', 'mask', 'pattern', 'svg', 'switch', 'symbol'
|
| ],
|
|
|
| CLASS_DESCRIPTIVE: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermDescriptiveElement
|
| + // https://svgwg.org/svg2-draft/struct.html#TermDescriptiveElement
|
| 'desc', 'metadata', 'title'
|
| ],
|
|
|
| CLASS_FILTER_PRIMITIVE: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermFilterPrimitiveElement
|
| + // http://dev.w3.org/fxtf/filters/#elementdef-filter-primitive
|
| 'feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix',
|
| - 'feDiffuseLighting', 'feDisplacementMap', 'feFlood', 'feGaussianBlur', 'feImage',
|
| - 'feMerge', 'feMorphology', 'feOffset', 'feSpecularLighting', 'feTile', 'feTurbulence'
|
| + 'feDiffuseLighting', 'feDisplacementMap', 'feDropShadow', 'feFlood', 'feGaussianBlur',
|
| + 'feImage', 'feMerge', 'feMorphology', 'feOffset', 'feSpecularLighting', 'feTile',
|
| + 'feTurbulence'
|
| ],
|
|
|
| - CLASS_GRADIENT: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermGradientElement
|
| - 'linearGradient', 'radialGradient'
|
| + CLASS_GRAPHICS: [
|
| + // https://svgwg.org/svg2-draft/struct.html#TermGraphicsElement
|
| + 'audio', 'canvas', 'circle', 'ellipse', 'foreignObject', 'iframe', 'image', 'line', 'path',
|
| + 'polygon', 'polyline', 'rect', 'text', 'use', 'video'
|
| ],
|
|
|
| - CLASS_GRAPHICS: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermGraphicsElement
|
| - 'circle', 'ellipse', 'image', 'line', 'path', 'polygon', 'polyline', 'rect', 'text', 'use'
|
| + CLASS_GRAPHICS_REFERENCING_ELEMENT: [
|
| + // https://svgwg.org/svg2-draft/struct.html#TermGraphicsReferencingElement
|
| + 'audio', 'iframe', 'image', 'use', 'video'
|
| ],
|
|
|
| CLASS_LIGHT_SOURCE: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermLightSourceElement
|
| + // http://dev.w3.org/fxtf/filters/#light-source
|
| 'feDistantLight', 'fePointLight', 'feSpotLight'
|
| ],
|
|
|
| + CLASS_PAINT_SERVER: [
|
| + // https://svgwg.org/svg2-draft/intro.html#TermPaintServerElement
|
| + 'solidColor', 'linearGradient', 'radialGradient', 'meshGradient', 'pattern', 'hatch'
|
| + ],
|
| +
|
| CLASS_SHAPE: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermShapeElement
|
| + // https://svgwg.org/svg2-draft/shapes.html#TermShapeElement
|
| 'circle', 'ellipse', 'line', 'path', 'polygon', 'polyline', 'rect'
|
| ],
|
|
|
| CLASS_STRUCTURAL: [
|
| - // http://www.w3.org/TR/SVG/intro.html#TermStructuralElement
|
| + // https://svgwg.org/svg2-draft/intro.html#TermStructuralElement
|
| 'defs', 'g', 'svg', 'symbol', 'use'
|
| ],
|
| +
|
| + CLASS_STRUCTURALLY_EXTERNAL_ELEMENTS: [
|
| + // https://svgwg.org/svg2-draft/intro.html#TermStructurallyExternalElement
|
| + 'audio', 'foreignObject', 'iframe', 'image', 'script', 'use', 'video'
|
| + ],
|
| +
|
| + CLASS_TEXT_CONTENT_ELEMENTS: [
|
| + // https://svgwg.org/svg2-draft/text.html#TermTextContentElement
|
| + 'text', 'textPath', 'tspan'
|
| + ],
|
| +
|
| + CLASS_TEXT_CONTENT_BLOCK_ELEMENTS: [
|
| + // https://svgwg.org/svg2-draft/text.html#TermTextContentBlockElement
|
| + 'text'
|
| + ],
|
| +
|
| + CLASS_TEXT_CONTENT_CHILD_ELEMENTS: [
|
| + // https://svgwg.org/svg2-draft/text.html#TermTextContentChildElement
|
| + 'textPath', 'tspan'
|
| + ],
|
| };
|
|
|