Changeset 154462 in webkit
- Timestamp:
- Aug 22, 2013 2:58:09 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 deleted
- 132 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r154460 r154462 1 2013-08-22 Christophe Dumez <ch.dumez@sisa.samsung.com> 2 3 [SVG2] Merge SVGStyledElement and SVGElement 4 https://bugs.webkit.org/show_bug.cgi?id=107386 5 6 Reviewed by Andreas Kling. 7 8 Add layout test to validate the SVG2 inheritance model. 9 10 * svg/dom/svg2-inheritance-expected.txt: Added. 11 * svg/dom/svg2-inheritance.html: Added. 12 1 13 2013-08-22 Gavin Barraclough <barraclough@apple.com> 2 14 -
trunk/Source/WebCore/CMakeLists.txt
r154271 r154462 732 732 svg/SVGStringList.idl 733 733 svg/SVGStyleElement.idl 734 svg/SVGStyledElement.idl735 734 svg/SVGSwitchElement.idl 736 735 svg/SVGSymbolElement.idl … … 2456 2455 svg/SVGStringList.cpp 2457 2456 svg/SVGStyleElement.cpp 2458 svg/SVGStyledElement.cpp2459 2457 svg/SVGSwitchElement.cpp 2460 2458 svg/SVGSymbolElement.cpp -
trunk/Source/WebCore/ChangeLog
r154458 r154462 1 2013-08-22 Christophe Dumez <ch.dumez@sisa.samsung.com> 2 3 [SVG2] Merge SVGStyledElement and SVGElement 4 https://bugs.webkit.org/show_bug.cgi?id=107386 5 6 Reviewed by Andreas Kling. 7 8 Merge SVGStyledElement into SVGElement to simplify the SVG inheritance 9 model and match the SVG2 specification: 10 https://svgwg.org/svg2-draft/single-page.html#types-InterfaceSVGElement 11 12 Test: svg/dom/svg2-inheritance.html 13 14 * CMakeLists.txt: 15 * DerivedSources.cpp: 16 * DerivedSources.make: 17 * DerivedSources.pri: 18 * GNUmakefile.list.am: 19 * Target.pri: 20 * WebCore.order: 21 * WebCore.vcxproj/WebCore.vcxproj: 22 * WebCore.vcxproj/WebCore.vcxproj.filters: 23 * WebCore.xcodeproj/project.pbxproj: 24 * accessibility/AccessibilityNodeObject.cpp: 25 (WebCore::AccessibilityNodeObject::alternativeText): 26 (WebCore::AccessibilityNodeObject::accessibilityDescription): 27 * css/SVGCSSStyleSelector.cpp: 28 * rendering/style/SVGRenderStyle.cpp: 29 * rendering/svg/RenderSVGContainer.cpp: 30 (WebCore::RenderSVGContainer::RenderSVGContainer): 31 * rendering/svg/RenderSVGContainer.h: 32 * rendering/svg/RenderSVGHiddenContainer.cpp: 33 (WebCore::RenderSVGHiddenContainer::RenderSVGHiddenContainer): 34 * rendering/svg/RenderSVGHiddenContainer.h: 35 * rendering/svg/RenderSVGModelObject.cpp: 36 (WebCore::RenderSVGModelObject::RenderSVGModelObject): 37 (WebCore::getElementCTM): 38 * rendering/svg/RenderSVGModelObject.h: 39 * rendering/svg/RenderSVGResourceClipper.cpp: 40 (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): 41 (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect): 42 (WebCore::RenderSVGResourceClipper::hitTestClipContent): 43 * rendering/svg/RenderSVGResourceContainer.cpp: 44 (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): 45 * rendering/svg/RenderSVGResourceContainer.h: 46 * rendering/svg/RenderSVGResourceFilter.cpp: 47 * rendering/svg/RenderSVGResourceFilterPrimitive.h: 48 * rendering/svg/RenderSVGResourceMarker.cpp: 49 * rendering/svg/RenderSVGResourceMarker.h: 50 * rendering/svg/RenderSVGResourceMasker.cpp: 51 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): 52 (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect): 53 * rendering/svg/RenderSVGResourcePattern.cpp: 54 (WebCore::RenderSVGResourcePattern::createTileImage): 55 * rendering/svg/RenderSVGRoot.cpp: 56 (WebCore::RenderSVGRoot::RenderSVGRoot): 57 * rendering/svg/RenderSVGRoot.h: 58 * rendering/svg/RenderSVGViewportContainer.cpp: 59 (WebCore::RenderSVGViewportContainer::RenderSVGViewportContainer): 60 * rendering/svg/RenderSVGViewportContainer.h: 61 * rendering/svg/SVGRenderSupport.cpp: 62 (WebCore::SVGRenderSupport::layoutChildren): 63 * rendering/svg/SVGRenderTreeAsText.cpp: 64 * rendering/svg/SVGResources.cpp: 65 (WebCore::registerPendingResource): 66 * rendering/svg/SVGResourcesCache.cpp: 67 * svg/SVGAElement.cpp: 68 (WebCore::SVGAElement::title): 69 * svg/SVGAllInOne.cpp: 70 * svg/SVGAltGlyphDefElement.h: 71 * svg/SVGAltGlyphItemElement.h: 72 * svg/SVGAnimateElement.cpp: 73 * svg/SVGAnimatedType.cpp: 74 (WebCore::SVGAnimatedType::valueAsString): 75 (WebCore::SVGAnimatedType::setValueAsString): 76 * svg/SVGAnimationElement.cpp: 77 (WebCore::SVGAnimationElement::isTargetAttributeCSSProperty): 78 (WebCore::SVGAnimationElement::computeCSSPropertyValue): 79 (WebCore::SVGAnimationElement::adjustForInheritance): 80 (WebCore::inheritsFromProperty): 81 * svg/SVGComponentTransferFunctionElement.h: 82 * svg/SVGCursorElement.h: 83 * svg/SVGDescElement.cpp: 84 (WebCore::SVGDescElement::SVGDescElement): 85 * svg/SVGDescElement.h: 86 * svg/SVGDescElement.idl: 87 * svg/SVGElement.cpp: 88 (WebCore::mapAttributeToCSSProperty): 89 (WebCore::cssPropertyToTypeMap): 90 (WebCore::SVGElement::SVGElement): 91 (WebCore::SVGElement::~SVGElement): 92 (WebCore::SVGElement::removedFrom): 93 (WebCore::SVGElement::parseAttribute): 94 (WebCore::SVGElement::animatedPropertyTypeForAttribute): 95 (WebCore::collectInstancesForSVGElement): 96 (WebCore::SVGElement::isAnimatableAttribute): 97 (WebCore::SVGElement::title): 98 (WebCore::SVGElement::rendererIsNeeded): 99 (WebCore::SVGElement::cssPropertyIdForSVGAttributeName): 100 (WebCore::SVGElement::isAnimatableCSSProperty): 101 (WebCore::SVGElement::isPresentationAttribute): 102 (WebCore::SVGElement::collectStyleForPresentationAttribute): 103 (WebCore::SVGElement::isKnownAttribute): 104 (WebCore::SVGElement::svgAttributeChanged): 105 (WebCore::SVGElement::insertedInto): 106 (WebCore::SVGElement::buildPendingResourcesIfNeeded): 107 (WebCore::SVGElement::childrenChanged): 108 (WebCore::SVGElement::getPresentationAttribute): 109 (WebCore::SVGElement::instanceUpdatesBlocked): 110 (WebCore::SVGElement::setInstanceUpdatesBlocked): 111 (WebCore::SVGElement::localCoordinateSpaceTransform): 112 (WebCore::SVGElement::updateRelativeLengthsInformation): 113 (WebCore::SVGElement::isMouseFocusable): 114 (WebCore::SVGElement::isKeyboardFocusable): 115 * svg/SVGElement.h: 116 (WebCore::SVGElement::supportsMarkers): 117 (WebCore::SVGElement::hasRelativeLengths): 118 (WebCore::SVGElement::needsPendingResourceHandling): 119 (WebCore::SVGElement::selfHasRelativeLengths): 120 (WebCore::SVGElement::updateRelativeLengthsInformation): 121 * svg/SVGElement.idl: 122 * svg/SVGElementInstance.cpp: 123 (WebCore::SVGElementInstance::invalidateAllInstancesOfElement): 124 (WebCore::SVGElementInstance::InstanceUpdateBlocker::InstanceUpdateBlocker): 125 * svg/SVGElementInstance.h: 126 * svg/SVGFEBlendElement.idl: 127 * svg/SVGFEColorMatrixElement.idl: 128 * svg/SVGFEComponentTransferElement.idl: 129 * svg/SVGFECompositeElement.idl: 130 * svg/SVGFEConvolveMatrixElement.idl: 131 * svg/SVGFEDiffuseLightingElement.idl: 132 * svg/SVGFEDisplacementMapElement.idl: 133 * svg/SVGFEDropShadowElement.idl: 134 * svg/SVGFEFloodElement.idl: 135 * svg/SVGFEGaussianBlurElement.idl: 136 * svg/SVGFEImageElement.idl: 137 * svg/SVGFELightElement.h: 138 * svg/SVGFEMergeElement.idl: 139 * svg/SVGFEMergeNodeElement.h: 140 * svg/SVGFEMorphologyElement.idl: 141 * svg/SVGFEOffsetElement.idl: 142 * svg/SVGFESpecularLightingElement.idl: 143 * svg/SVGFETileElement.idl: 144 * svg/SVGFETurbulenceElement.idl: 145 * svg/SVGFilterElement.cpp: 146 (WebCore::SVGFilterElement::SVGFilterElement): 147 (WebCore::SVGFilterElement::parseAttribute): 148 (WebCore::SVGFilterElement::svgAttributeChanged): 149 (WebCore::SVGFilterElement::childrenChanged): 150 * svg/SVGFilterElement.h: 151 * svg/SVGFilterElement.idl: 152 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 153 (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes): 154 (WebCore::SVGFilterPrimitiveStandardAttributes::parseAttribute): 155 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 156 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 157 (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded): 158 * svg/SVGFilterPrimitiveStandardAttributes.h: 159 * svg/SVGFontElement.cpp: 160 (WebCore::SVGFontElement::SVGFontElement): 161 * svg/SVGFontElement.h: 162 * svg/SVGFontFaceElement.cpp: 163 * svg/SVGFontFaceElement.h: 164 * svg/SVGFontFaceFormatElement.h: 165 * svg/SVGFontFaceNameElement.h: 166 * svg/SVGFontFaceSrcElement.h: 167 * svg/SVGFontFaceUriElement.h: 168 * svg/SVGGElement.cpp: 169 (WebCore::SVGGElement::rendererIsNeeded): 170 * svg/SVGGlyphElement.cpp: 171 (WebCore::SVGGlyphElement::SVGGlyphElement): 172 (WebCore::SVGGlyphElement::parseAttribute): 173 (WebCore::SVGGlyphElement::insertedInto): 174 (WebCore::SVGGlyphElement::removedFrom): 175 * svg/SVGGlyphElement.h: 176 * svg/SVGGlyphRefElement.cpp: 177 (WebCore::SVGGlyphRefElement::SVGGlyphRefElement): 178 (WebCore::SVGGlyphRefElement::parseAttribute): 179 * svg/SVGGlyphRefElement.h: 180 * svg/SVGGlyphRefElement.idl: 181 * svg/SVGGradientElement.cpp: 182 (WebCore::SVGGradientElement::SVGGradientElement): 183 (WebCore::SVGGradientElement::parseAttribute): 184 (WebCore::SVGGradientElement::svgAttributeChanged): 185 (WebCore::SVGGradientElement::childrenChanged): 186 * svg/SVGGradientElement.h: 187 * svg/SVGGradientElement.idl: 188 * svg/SVGGraphicsElement.cpp: 189 (WebCore::SVGGraphicsElement::SVGGraphicsElement): 190 (WebCore::SVGGraphicsElement::parseAttribute): 191 (WebCore::SVGGraphicsElement::svgAttributeChanged): 192 * svg/SVGGraphicsElement.h: 193 * svg/SVGGraphicsElement.idl: 194 * svg/SVGLocatable.cpp: 195 (WebCore::SVGLocatable::computeCTM): 196 * svg/SVGMPathElement.h: 197 * svg/SVGMarkerElement.cpp: 198 (WebCore::SVGMarkerElement::SVGMarkerElement): 199 (WebCore::SVGMarkerElement::parseAttribute): 200 (WebCore::SVGMarkerElement::svgAttributeChanged): 201 (WebCore::SVGMarkerElement::childrenChanged): 202 * svg/SVGMarkerElement.h: 203 * svg/SVGMarkerElement.idl: 204 * svg/SVGMaskElement.cpp: 205 (WebCore::SVGMaskElement::SVGMaskElement): 206 (WebCore::SVGMaskElement::parseAttribute): 207 (WebCore::SVGMaskElement::svgAttributeChanged): 208 (WebCore::SVGMaskElement::childrenChanged): 209 * svg/SVGMaskElement.h: 210 * svg/SVGMaskElement.idl: 211 * svg/SVGMetadataElement.h: 212 * svg/SVGMissingGlyphElement.cpp: 213 (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement): 214 * svg/SVGMissingGlyphElement.h: 215 * svg/SVGMissingGlyphElement.idl: 216 * svg/SVGPatternElement.cpp: 217 (WebCore::SVGPatternElement::SVGPatternElement): 218 (WebCore::SVGPatternElement::parseAttribute): 219 (WebCore::SVGPatternElement::svgAttributeChanged): 220 (WebCore::SVGPatternElement::childrenChanged): 221 * svg/SVGPatternElement.h: 222 * svg/SVGPatternElement.idl: 223 * svg/SVGScriptElement.h: 224 * svg/SVGStopElement.cpp: 225 (WebCore::SVGStopElement::SVGStopElement): 226 (WebCore::SVGStopElement::parseAttribute): 227 (WebCore::SVGStopElement::svgAttributeChanged): 228 * svg/SVGStopElement.h: 229 * svg/SVGStopElement.idl: 230 * svg/SVGStyleElement.h: 231 * svg/SVGStyledElement.cpp: Removed. 232 * svg/SVGStyledElement.h: Removed. 233 * svg/SVGStyledElement.idl: Removed. 234 * svg/SVGSymbolElement.cpp: 235 (WebCore::SVGSymbolElement::SVGSymbolElement): 236 (WebCore::SVGSymbolElement::parseAttribute): 237 (WebCore::SVGSymbolElement::svgAttributeChanged): 238 * svg/SVGSymbolElement.h: 239 * svg/SVGSymbolElement.idl: 240 * svg/SVGTRefElement.cpp: 241 (WebCore::SVGTRefElement::insertedInto): 242 (WebCore::SVGTRefElement::removedFrom): 243 * svg/SVGTitleElement.cpp: 244 (WebCore::SVGTitleElement::SVGTitleElement): 245 (WebCore::SVGTitleElement::insertedInto): 246 * svg/SVGTitleElement.h: 247 * svg/SVGTitleElement.idl: 248 * svg/SVGTransformable.cpp: 249 * svg/SVGUseElement.cpp: 250 (WebCore::SVGUseElement::selfHasRelativeLengths): 251 * svg/SVGViewElement.cpp: 252 (WebCore::SVGViewElement::SVGViewElement): 253 (WebCore::SVGViewElement::parseAttribute): 254 * svg/SVGViewElement.h: 255 * svg/animation/SVGSMILElement.h: 256 * svg/graphics/filters/SVGFEImage.cpp: 257 (WebCore::FEImage::platformApplySoftware): 258 1 259 2013-08-22 Andreas Kling <akling@apple.com> 2 260 -
trunk/Source/WebCore/DerivedSources.cpp
r154137 r154462 464 464 #include "JSSVGStringList.cpp" 465 465 #include "JSSVGStyleElement.cpp" 466 #include "JSSVGStyledElement.cpp"467 466 #include "JSSVGSwitchElement.cpp" 468 467 #include "JSSVGSymbolElement.cpp" -
trunk/Source/WebCore/DerivedSources.make
r154127 r154462 588 588 $(WebCore)/svg/SVGStringList.idl \ 589 589 $(WebCore)/svg/SVGStyleElement.idl \ 590 $(WebCore)/svg/SVGStyledElement.idl \591 590 $(WebCore)/svg/SVGSwitchElement.idl \ 592 591 $(WebCore)/svg/SVGSymbolElement.idl \ -
trunk/Source/WebCore/DerivedSources.pri
r154127 r154462 613 613 $$PWD/svg/SVGStringList.idl \ 614 614 $$PWD/svg/SVGStyleElement.idl \ 615 $$PWD/svg/SVGStyledElement.idl \616 615 $$PWD/svg/SVGSVGElement.idl \ 617 616 $$PWD/svg/SVGSwitchElement.idl \ -
trunk/Source/WebCore/GNUmakefile.list.am
r154443 r154462 1141 1141 DerivedSources/WebCore/JSSVGStyleElement.cpp \ 1142 1142 DerivedSources/WebCore/JSSVGStyleElement.h \ 1143 DerivedSources/WebCore/JSSVGStyledElement.cpp \1144 DerivedSources/WebCore/JSSVGStyledElement.h \1145 1143 DerivedSources/WebCore/JSSVGSVGElement.cpp \ 1146 1144 DerivedSources/WebCore/JSSVGSVGElement.h \ … … 1730 1728 $(WebCore)/svg/SVGStringList.idl \ 1731 1729 $(WebCore)/svg/SVGStyleElement.idl \ 1732 $(WebCore)/svg/SVGStyledElement.idl \1733 1730 $(WebCore)/svg/SVGSwitchElement.idl \ 1734 1731 $(WebCore)/svg/SVGSymbolElement.idl \ … … 5273 5270 Source/WebCore/svg/SVGStyleElement.cpp \ 5274 5271 Source/WebCore/svg/SVGStyleElement.h \ 5275 Source/WebCore/svg/SVGStyledElement.cpp \5276 Source/WebCore/svg/SVGStyledElement.h \5277 5272 Source/WebCore/svg/SVGSVGElement.cpp \ 5278 5273 Source/WebCore/svg/SVGSVGElement.h \ -
trunk/Source/WebCore/Target.pri
r154443 r154462 2795 2795 svg/SVGStringList.h \ 2796 2796 svg/SVGStyleElement.h \ 2797 svg/SVGStyledElement.h \2798 2797 svg/SVGSVGElement.h \ 2799 2798 svg/SVGSwitchElement.h \ … … 3862 3861 svg/SVGStringList.cpp \ 3863 3862 svg/SVGStyleElement.cpp \ 3864 svg/SVGStyledElement.cpp \3865 3863 svg/SVGSwitchElement.cpp \ 3866 3864 svg/SVGSymbolElement.cpp \ -
trunk/Source/WebCore/WebCore.order
r153775 r154462 9948 9948 __ZN7WebCore29SVGStyledTransformableElementC2ERKNS_13QualifiedNameEPNS_8DocumentENS_4Node16ConstructionTypeE 9949 9949 __ZN7WebCore25SVGStyledLocatableElementC2ERKNS_13QualifiedNameEPNS_8DocumentENS_4Node16ConstructionTypeE 9950 __ZN7WebCore16SVGStyledElementC2ERKNS_13QualifiedNameEPNS_8DocumentENS_4Node16ConstructionTypeE9951 9950 __ZN7WebCore10SVGElementC2ERKNS_13QualifiedNameEPNS_8DocumentENS_4Node16ConstructionTypeE 9952 9951 __ZN7WebCore25SVGAttributeToPropertyMap11addPropertyEPKNS_15SVGPropertyInfoE … … 9957 9956 __ZN3WTF9HashTableIN7WebCore13QualifiedNameENS_12KeyValuePairIS2_NS_6OwnPtrINS_6VectorIPKNS1_15SVGPropertyInfoELm0ENS_15CrashOnOverflowEEEEEEENS_24KeyValuePairKeyExtractorISC_EENS1_17QualifiedNameHashENS_18HashMapValueTraitsINS_10HashTraitsIS2_EENSH_ISB_EEEESI_E6lookupINS_22IdentityHashTranslatorISF_EES2_EEPSC_RKT0_ 9958 9957 __ZN3WTF9HashTableIN7WebCore13QualifiedNameENS_12KeyValuePairIS2_NS_6OwnPtrINS_6VectorIPKNS1_15SVGPropertyInfoELm0ENS_15CrashOnOverflowEEEEEEENS_24KeyValuePairKeyExtractorISC_EENS1_17QualifiedNameHashENS_18HashMapValueTraitsINS_10HashTraitsIS2_EENSH_ISB_EEEESI_E6rehashEi 9959 __ZN7WebCore16SVG StyledElement22attributeToPropertyMapEv9958 __ZN7WebCore16SVGElement22attributeToPropertyMapEv 9960 9959 __ZN7WebCore25SVGAttributeToPropertyMap13addPropertiesERKS0_ 9961 9960 __ZN7WebCore8SVGTestsC2Ev … … 9967 9966 __ZN7WebCore8SVGTests22attributeToPropertyMapEv 9968 9967 __ZN7WebCore10SVGElement16attributeChangedERKNS_13QualifiedNameERKN3WTF12AtomicStringENS_7Element27AttributeModificationReasonE 9969 __ZNK7WebCore16SVG StyledElement23isPresentationAttributeERKNS_13QualifiedNameE9970 __ZN7WebCore16SVG StyledElement32cssPropertyIdForSVGAttributeNameERKNS_13QualifiedNameE9968 __ZNK7WebCore16SVGElement23isPresentationAttributeERKNS_13QualifiedNameE 9969 __ZN7WebCore16SVGElement32cssPropertyIdForSVGAttributeNameERKNS_13QualifiedNameE 9971 9970 __ZN3WTF9HashTableIPNS_16AtomicStringImplENS_12KeyValuePairIS2_N7WebCore13CSSPropertyIDEEENS_24KeyValuePairKeyExtractorIS6_EENS_7PtrHashIS2_EENS_18HashMapValueTraitsINS_10HashTraitsIS2_EENSC_IS5_EEEESD_E16lookupForWritingINS_22IdentityHashTranslatorISA_EES2_EENSt3__14pairIPS6_bEERKT0_ 9972 9971 __ZN3WTF9HashTableIPNS_16AtomicStringImplENS_12KeyValuePairIS2_N7WebCore13CSSPropertyIDEEENS_24KeyValuePairKeyExtractorIS6_EENS_7PtrHashIS2_EENS_18HashMapValueTraitsINS_10HashTraitsIS2_EENSC_IS5_EEEESD_E3addINS_17HashMapTranslatorISF_SA_EES2_S5_EENS_18HashTableAddResultINS_17HashTableIteratorIS2_S6_S8_SA_SF_SD_EEEERKT0_RKT1_ … … 9992 9991 __ZNK7WebCore13SVGSVGElement6heightEv 9993 9992 __ZN7WebCore13SVGSVGElement18heightPropertyInfoEv 9994 __ZN7WebCore16SVG StyledElement32updateRelativeLengthsInformationEbPS0_9993 __ZN7WebCore16SVGElement32updateRelativeLengthsInformationEbPS0_ 9995 9994 __ZN7WebCore15SVGFitToViewBox16isKnownAttributeERKNS_13QualifiedNameE 9996 9995 __ZN7WebCore8SVGTests21handleAttributeChangeEPNS_10SVGElementERKNS_13QualifiedNameE … … 9999 9998 __ZN7WebCore16HTMLElementStack28isMathMLTextIntegrationPointEPNS_13HTMLStackItemE 10000 9999 __ZN7WebCore13SVGSVGElement12insertedIntoEPNS_13ContainerNodeE 10001 __ZN7WebCore16SVG StyledElement12insertedIntoEPNS_13ContainerNodeE10002 __ZN7WebCore16SVG StyledElement29buildPendingResourcesIfNeededEv10003 __ZNK7WebCore16SVG StyledElement28needsPendingResourceHandlingEv10000 __ZN7WebCore16SVGElement12insertedIntoEPNS_13ContainerNodeE 10001 __ZN7WebCore16SVGElement29buildPendingResourcesIfNeededEv 10002 __ZNK7WebCore16SVGElement28needsPendingResourceHandlingEv 10004 10003 __ZN7WebCore15HTMLTreeBuilder28processTokenInForeignContentEPNS_15AtomicHTMLTokenE 10005 __ZN7WebCore16SVG StyledElement15childrenChangedEbPNS_4NodeES2_i10004 __ZN7WebCore16SVGElement15childrenChangedEbPNS_4NodeES2_i 10006 10005 __ZN7WebCoreL20adjustSVGTagNameCaseEPNS_15AtomicHTMLTokenE 10007 10006 __ZN7WebCore8SVGNames10getSVGTagsEv … … 10009 10008 __ZN7WebCore11SVGGElement6createERKNS_13QualifiedNameEPNS_8DocumentE 10010 10009 __ZN7WebCoreL40registerAnimatedPropertiesForSVGGElementEv 10011 __ZNK7WebCore16SVG StyledElement22selfHasRelativeLengthsEv10010 __ZNK7WebCore16SVGElement22selfHasRelativeLengthsEv 10012 10011 __ZN7WebCoreL17circleConstructorERKNS_13QualifiedNameEPNS_8DocumentEb 10013 10012 __ZN7WebCore16SVGCircleElement6createERKNS_13QualifiedNameEPNS_8DocumentE … … 10033 10032 __ZN7WebCore16SVGCircleElement13rPropertyInfoEv 10034 10033 __ZN7WebCore29SVGStyledTransformableElement14parseAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringE 10035 __ZN7WebCore16SVG StyledElement14parseAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringE10034 __ZN7WebCore16SVGElement14parseAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringE 10036 10035 __ZN7WebCore29SVGStyledTransformableElement19svgAttributeChangedERKNS_13QualifiedNameE 10037 __ZN7WebCore16SVG StyledElement19svgAttributeChangedERKNS_13QualifiedNameE10038 __ZNK7WebCore16SVG StyledElement9classNameEv10036 __ZN7WebCore16SVGElement19svgAttributeChangedERKNS_13QualifiedNameE 10037 __ZNK7WebCore16SVGElement9classNameEv 10039 10038 __ZN7WebCore10SVGElement21finishParsingChildrenEv 10040 10039 __ZNK7WebCore10SVGElement24isOutermostSVGSVGElementEv … … 10154 10153 __ZN7WebCore21FormAssociatedElement19formRemovedFromTreeEPKNS_4NodeE 10155 10154 __ZN7WebCore13SVGSVGElement11removedFromEPNS_13ContainerNodeE 10156 __ZN7WebCore16SVG StyledElement11removedFromEPNS_13ContainerNodeE10155 __ZN7WebCore16SVGElement11removedFromEPNS_13ContainerNodeE 10157 10156 __ZN7WebCore10SVGElement11removedFromEPNS_13ContainerNodeE 10158 10157 __ZN7WebCore14SVGPathElement11removedFromEPNS_13ContainerNodeE … … 10167 10166 __ZN7WebCore17SMILTimeContainer16updateAnimationsENS_8SMILTimeEb 10168 10167 __ZNK7WebCore21SVGDocumentExtensions18hasPendingResourceERKN3WTF12AtomicStringE 10169 __ZN3WTF9HashTableIPN7WebCore16SVG StyledElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E3addINS_22IdentityHashTranslatorIS6_EES3_S3_EENS_18HashTableAddResultINS_17HashTableIteratorIS3_S3_S4_S6_S8_S8_EEEERKT0_RKT1_10170 __ZN3WTF9HashTableIPN7WebCore16SVG StyledElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E6rehashEi10168 __ZN3WTF9HashTableIPN7WebCore16SVGElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E3addINS_22IdentityHashTranslatorIS6_EES3_S3_EENS_18HashTableAddResultINS_17HashTableIteratorIS3_S3_S4_S6_S8_S8_EEEERKT0_RKT1_ 10169 __ZN3WTF9HashTableIPN7WebCore16SVGElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E6rehashEi 10171 10170 __ZN7WebCore21jsHTMLElementChildrenEPN3JSC9ExecStateENS0_7JSValueENS0_12PropertyNameE 10172 10171 __ZN7WebCore16JSHTMLCollection6createEPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_14HTMLCollectionEEE … … 10506 10505 __ZN7WebCore27backgroundPositionShorthandEv 10507 10506 __ZN7WebCore13SVGSVGElement14createRendererEPNS_11RenderArenaEPNS_11RenderStyleE 10508 __ZN7WebCore13RenderSVGRootC1EPNS_16SVG StyledElementE10507 __ZN7WebCore13RenderSVGRootC1EPNS_16SVGElementE 10509 10508 __ZN7WebCore13RenderSVGRoot15styleWillChangeENS_15StyleDifferenceEPKNS_11RenderStyleE 10510 10509 __ZN7WebCore13RenderSVGRoot14styleDidChangeENS_15StyleDifferenceEPKNS_11RenderStyleE … … 10516 10515 __ZNK7WebCore14SVGPolyElement7isValidEv 10517 10516 __ZNK7WebCore8SVGTests7isValidEv 10518 __ZN7WebCore16SVG StyledElement36collectStyleForPresentationAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringEPNS_23MutableStylePropertySetE10517 __ZN7WebCore16SVGElement36collectStyleForPresentationAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringEPNS_23MutableStylePropertySetE 10519 10518 __ZN7WebCore14SVGRenderStyle12setFillPaintENS_8SVGPaint12SVGPaintTypeERKNS_5ColorERKN3WTF6StringEbb 10520 10519 __ZN7WebCore7DataRefINS_13StyleFillDataEE6accessEv 10521 10520 __ZN7WebCore13StyleFillDataC1ERKS0_ 10522 __ZN7WebCore16SVG StyledElement16rendererIsNeededERKNS_20NodeRenderingContextE10521 __ZN7WebCore16SVGElement16rendererIsNeededERKNS_20NodeRenderingContextE 10523 10522 __ZN7WebCore29SVGStyledTransformableElement14createRendererEPNS_11RenderArenaEPNS_11RenderStyleE 10524 10523 __ZN7WebCore13RenderSVGPathC1EPNS_29SVGStyledTransformableElementE … … 10549 10548 __ZNK7WebCore14SVGDefsElement7isValidEv 10550 10549 __ZN7WebCore14SVGDefsElement14createRendererEPNS_11RenderArenaEPNS_11RenderStyleE 10551 __ZN7WebCore24RenderSVGHiddenContainerC1EPNS_16SVG StyledElementE10550 __ZN7WebCore24RenderSVGHiddenContainerC1EPNS_16SVGElementE 10552 10551 __ZNK7WebCore18RenderSVGContainer14isSVGContainerEv 10553 10552 __ZNK7WebCore18RenderSVGContainer15virtualChildrenEv … … 10555 10554 __ZN7WebCore24SVGLinearGradientElement14createRendererEPNS_11RenderArenaEPNS_11RenderStyleE 10556 10555 __ZN7WebCore31RenderSVGResourceLinearGradientC1EPNS_24SVGLinearGradientElementE 10557 __ZN7WebCore26RenderSVGResourceContainerC2EPNS_16SVG StyledElementE10556 __ZN7WebCore26RenderSVGResourceContainerC2EPNS_16SVGElementE 10558 10557 __ZN7WebCore24LinearGradientAttributesC2Ev 10559 10558 __ZN7WebCore26RenderSVGResourceContainer14styleDidChangeENS_15StyleDifferenceEPKNS_11RenderStyleE … … 10672 10671 __ZN7WebCore16SVGRenderSupport14layoutChildrenEPNS_12RenderObjectEb 10673 10672 __ZN7WebCore13RenderSVGRoot21needsBoundariesUpdateEv 10674 __ZNK7WebCore16SVG StyledElement18isSVGStyledElementEv10673 __ZNK7WebCore16SVGElement18isSVGElementEv 10675 10674 __ZN7WebCore14RenderSVGShape6layoutEv 10676 10675 __ZN7WebCore13RenderSVGPath22updateShapeFromElementEv … … 11190 11189 __ZN7WebCore9ClassListD0Ev 11191 11190 __ZN7WebCore12StyleElement19removedFromDocumentEPNS_8DocumentEPNS_7ElementE 11192 __ZN3WTF9HashTableIPN7WebCore16SVG StyledElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E6lookupINS_22IdentityHashTranslatorIS6_EES3_EEPS3_RKT0_11193 __ZN3WTF7HashSetIPN7WebCore16SVG StyledElementENS_7PtrHashIS3_EENS_10HashTraitsIS3_EEE6removeERKS3_11191 __ZN3WTF9HashTableIPN7WebCore16SVGElementES3_NS_17IdentityExtractorENS_7PtrHashIS3_EENS_10HashTraitsIS3_EES8_E6lookupINS_22IdentityHashTranslatorIS6_EES3_EEPS3_RKT0_ 11192 __ZN3WTF7HashSetIPN7WebCore16SVGElementENS_7PtrHashIS3_EENS_10HashTraitsIS3_EEE6removeERKS3_ 11194 11193 __ZN7WebCore19CachedCSSStyleSheetD0Ev 11195 11194 __ZN7WebCore19CachedCSSStyleSheetD2Ev … … 11362 11361 __ZN7WebCore15getDOMStructureINS_15JSSVGSVGElementEEEPN3JSC9StructureEPNS2_9ExecStateEPNS_17JSDOMGlobalObjectE 11363 11362 __ZN7WebCore15JSSVGSVGElement15createPrototypeEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE 11364 __ZN7WebCore27JSSVG StyledElementPrototype4selfEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE11365 __ZN7WebCore15getDOMStructureINS_18JSSVG StyledElementEEEPN3JSC9StructureEPNS2_9ExecStateEPNS_17JSDOMGlobalObjectE11366 __ZN7WebCore18JSSVG StyledElement15createPrototypeEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE11363 __ZN7WebCore27JSSVGElementPrototype4selfEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE 11364 __ZN7WebCore15getDOMStructureINS_18JSSVGElementEEEPN3JSC9StructureEPNS2_9ExecStateEPNS_17JSDOMGlobalObjectE 11365 __ZN7WebCore18JSSVGElement15createPrototypeEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE 11367 11366 __ZN7WebCore21JSSVGElementPrototype4selfEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE 11368 11367 __ZN7WebCore15getDOMStructureINS_12JSSVGElementEEEPN3JSC9StructureEPNS2_9ExecStateEPNS_17JSDOMGlobalObjectE … … 11370 11369 __ZN7WebCore15JSSVGSVGElement6createEPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_13SVGSVGElementEEE 11371 11370 __ZN7WebCore15JSSVGSVGElementC1EPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_13SVGSVGElementEEE 11372 __ZN7WebCore18JSSVG StyledElementC2EPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_16SVGStyledElementEEE11371 __ZN7WebCore18JSSVGElementC2EPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_16SVGElementEEE 11373 11372 __ZN7WebCore12JSSVGElementC2EPN3JSC9StructureEPNS_17JSDOMGlobalObjectEN3WTF10PassRefPtrINS_10SVGElementEEE 11374 11373 __ZN7WebCore15JSSVGSVGElement14finishCreationERN3JSC2VME 11375 __ZN7WebCore18JSSVG StyledElement14finishCreationERN3JSC2VME11374 __ZN7WebCore18JSSVGElement14finishCreationERN3JSC2VME 11376 11375 __ZN7WebCore12JSSVGElement14finishCreationERN3JSC2VME 11377 11376 __ZN7WebCore12cacheWrapperINS_13SVGSVGElementEEEvPNS_15DOMWrapperWorldEPT_PNS_12JSDOMWrapperE 11378 11377 __ZN7WebCore15JSSVGSVGElement18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE 11379 __ZN7WebCore18JSSVG StyledElement18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE11378 __ZN7WebCore18JSSVGElement18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE 11380 11379 __ZN7WebCore12JSSVGElement18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE 11381 11380 __ZN3JSC18getStaticValueSlotIN7WebCore12JSSVGElementENS1_9JSElementEEEbPNS_9ExecStateEPKNS_9HashTableEPT_NS_12PropertyNameERNS_12PropertySlotE … … 13612 13611 __ZNK7WebCore9FillLayer10sizeLengthEv 13613 13612 __ZNK3WTF12StringAppendIPKcNS_6StringEEcvNS_12AtomicStringEEv 13614 __ZNK7WebCore16SVG StyledElement22instanceUpdatesBlockedEv13613 __ZNK7WebCore16SVGElement22instanceUpdatesBlockedEv 13615 13614 __ZNK7WebCore10SVGElement19instancesForElementEv 13616 13615 __ZN7WebCore11SVGGElement14parseAttributeERKNS_13QualifiedNameERKN3WTF12AtomicStringE … … 16828 16827 __ZN7WebCore15GraphicsLayerCA21setAnimationKeyframesERKNS_17KeyframeValueListEPKNS_9AnimationEPNS_19PlatformCAAnimationE 16829 16828 __ZN7WebCore19PlatformCAAnimation9setValuesERKN3WTF6VectorIfLm0ENS1_15CrashOnOverflowEEE 16830 __ZN7WebCore23jsSVG StyledElementStyleEPN3JSC9ExecStateENS0_7JSValueENS0_12PropertyNameE16831 __ZN7WebCore27JSSVG StyledElementPrototype18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE16829 __ZN7WebCore23jsSVGElementStyleEPN3JSC9ExecStateENS0_7JSValueENS0_12PropertyNameE 16830 __ZN7WebCore27JSSVGElementPrototype18getOwnPropertySlotEPN3JSC6JSCellEPNS1_9ExecStateENS1_12PropertyNameERNS1_12PropertySlotE 16832 16831 __ZN7WebCoreL15descConstructorERKNS_13QualifiedNameEPNS_8DocumentEb 16833 16832 __ZN7WebCore14SVGDescElement6createERKNS_13QualifiedNameEPNS_8DocumentE … … 18782 18781 __ZN7WebCore36SVGFilterPrimitiveStandardAttributes16rendererIsNeededERKNS_20NodeRenderingContextE 18783 18782 __ZN7WebCore36SVGFilterPrimitiveStandardAttributes14createRendererEPNS_11RenderArenaEPNS_11RenderStyleE 18784 __ZN7WebCore24RenderSVGHiddenContainerC2EPNS_16SVG StyledElementE18783 __ZN7WebCore24RenderSVGHiddenContainerC2EPNS_16SVGElementE 18785 18784 __ZN7WebCore32RenderSVGResourceFilterPrimitive14styleDidChangeENS_15StyleDifferenceEPKNS_11RenderStyleE 18786 18785 __ZThn128_N7WebCore23RenderSVGResourceFilter25removeAllClientsFromCacheEb … … 23750 23749 __ZTVN7WebCore22ConditionEventListenerE 23751 23750 __ZTVN7WebCore14SVGStopElementE 23752 __ZTVN7WebCore16SVG StyledElementE23751 __ZTVN7WebCore16SVGElementE 23753 23752 __ZTVN7WebCore29SVGGraphicsElementE 23754 23753 __ZTTN7WebCore29SVGGraphicsElementE … … 29622 29621 __ZZN7WebCore14SVGStopElement20isSupportedAttributeERKNS_13QualifiedNameEE19supportedAttributes 29623 29622 __ZGVZN7WebCore14SVGStopElement20isSupportedAttributeERKNS_13QualifiedNameEE19supportedAttributes.b 29624 __ZZN7WebCore16SVG StyledElement21classNamePropertyInfoEvE14s_propertyInfo29625 __ZGVZN7WebCore16SVG StyledElement21classNamePropertyInfoEvE14s_propertyInfo.b29626 __ZZN7WebCore16SVG StyledElement22attributeToPropertyMapEvE24s_attributeToPropertyMap29627 __ZGVZN7WebCore16SVG StyledElement22attributeToPropertyMapEvE24s_attributeToPropertyMap.b29628 __ZZN7WebCore16SVG StyledElement32cssPropertyIdForSVGAttributeNameERKNS_13QualifiedNameEE19propertyNameToIdMap29623 __ZZN7WebCore16SVGElement21classNamePropertyInfoEvE14s_propertyInfo 29624 __ZGVZN7WebCore16SVGElement21classNamePropertyInfoEvE14s_propertyInfo.b 29625 __ZZN7WebCore16SVGElement22attributeToPropertyMapEvE24s_attributeToPropertyMap 29626 __ZGVZN7WebCore16SVGElement22attributeToPropertyMapEvE24s_attributeToPropertyMap.b 29627 __ZZN7WebCore16SVGElement32cssPropertyIdForSVGAttributeNameERKNS_13QualifiedNameEE19propertyNameToIdMap 29629 29628 __ZZN7WebCore29SVGGraphicsElement21transformPropertyInfoEvE14s_propertyInfo 29630 29629 __ZGVZN7WebCore29SVGGraphicsElement21transformPropertyInfoEvE14s_propertyInfo.b -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
r154443 r154462 17591 17591 </ClCompile> 17592 17592 <ClCompile Include="..\svg\SVGMaskElement.cpp"> 17593 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>17594 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>17595 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild>17596 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild>17597 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>17598 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild>17599 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>17600 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>17601 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>17602 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild>17603 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>17604 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>17605 </ClCompile>17606 <ClCompile Include="..\svg\SVGStyledElement.cpp">17607 17593 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 17608 17594 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> … … 20911 20897 <ClInclude Include="..\svg\SVGStopElement.h" /> 20912 20898 <ClInclude Include="..\svg\SVGStringList.h" /> 20913 <ClInclude Include="..\svg\SVGStyledElement.h" />20914 20899 <ClInclude Include="..\svg\SVGGraphicsElement.h" /> 20915 20900 <ClInclude Include="..\svg\SVGStyleElement.h" /> -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
r154443 r154462 4804 4804 <Filter>rendering\svg</Filter> 4805 4805 </ClCompile> 4806 <ClCompile Include="..\svg\SVGStyledElement.cpp">4807 <Filter>rendering\svg</Filter>4808 </ClCompile>4809 4806 <ClCompile Include="..\svg\SVGStyleElement.cpp"> 4810 4807 <Filter>rendering\svg</Filter> … … 12153 12150 </ClInclude> 12154 12151 <ClInclude Include="..\svg\SVGStringList.h"> 12155 <Filter>rendering\svg</Filter>12156 </ClInclude>12157 <ClInclude Include="..\svg\SVGStyledElement.h">12158 12152 <Filter>rendering\svg</Filter> 12159 12153 </ClInclude> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r154314 r154462 4074 4074 B2227AB60D00BF220071B782 /* SVGGraphicsElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B22279200D00BF210071B782 /* SVGGraphicsElement.h */; }; 4075 4075 B2227AB70D00BF220071B782 /* SVGStyleElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B22279210D00BF210071B782 /* SVGStyleElement.cpp */; }; 4076 B2227AB70D00BF220071B783 /* SVGStyledElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B22279210D00BF210071B783 /* SVGStyledElement.cpp */; };4077 4076 B2227AB80D00BF220071B782 /* SVGStyleElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B22279220D00BF210071B782 /* SVGStyleElement.h */; }; 4078 B2227AB80D00BF220071B783 /* SVGStyledElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B22279220D00BF210071B783 /* SVGStyledElement.h */; };4079 4077 B2227ABA0D00BF220071B782 /* SVGSVGElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B22279240D00BF210071B782 /* SVGSVGElement.cpp */; }; 4080 4078 B2227ABB0D00BF220071B782 /* SVGSVGElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B22279250D00BF210071B782 /* SVGSVGElement.h */; }; … … 4466 4464 B2FA3DF90AB75A6F000E5AC4 /* JSSVGStringList.h in Headers */ = {isa = PBXBuildFile; fileRef = B2FA3D110AB75A6E000E5AC4 /* JSSVGStringList.h */; }; 4467 4465 B2FA3DFA0AB75A6F000E5AC4 /* JSSVGStyleElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2FA3D120AB75A6E000E5AC4 /* JSSVGStyleElement.cpp */; }; 4468 B2FA3DFA0AB75A6F000E5AC5 /* JSSVGStyledElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2FA3D120AB75A6E000E5AC5 /* JSSVGStyledElement.cpp */; };4469 4466 B2FA3DFB0AB75A6F000E5AC4 /* JSSVGStyleElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B2FA3D130AB75A6E000E5AC4 /* JSSVGStyleElement.h */; }; 4470 B2FA3DFB0AB75A6F000E5AC5 /* JSSVGStyledElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B2FA3D130AB75A6E000E5AC5 /* JSSVGStyledElement.h */; };4471 4467 B2FA3DFC0AB75A6F000E5AC4 /* JSSVGSVGElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2FA3D140AB75A6F000E5AC4 /* JSSVGSVGElement.cpp */; }; 4472 4468 B2FA3DFD0AB75A6F000E5AC4 /* JSSVGSVGElement.h in Headers */ = {isa = PBXBuildFile; fileRef = B2FA3D150AB75A6F000E5AC4 /* JSSVGSVGElement.h */; }; … … 10690 10686 B22279200D00BF210071B782 /* SVGGraphicsElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGGraphicsElement.h; sourceTree = "<group>"; }; 10691 10687 B22279210D00BF210071B782 /* SVGStyleElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGStyleElement.cpp; sourceTree = "<group>"; }; 10692 B22279210D00BF210071B783 /* SVGStyledElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGStyledElement.cpp; sourceTree = "<group>"; };10693 10688 B22279220D00BF210071B782 /* SVGStyleElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGStyleElement.h; sourceTree = "<group>"; }; 10694 B22279220D00BF210071B783 /* SVGStyledElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGStyledElement.h; sourceTree = "<group>"; };10695 10689 B22279230D00BF210071B782 /* SVGStyleElement.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SVGStyleElement.idl; sourceTree = "<group>"; }; 10696 B22279230D00BF210071B783 /* SVGStyledElement.idl */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SVGStyledElement.idl; sourceTree = "<group>"; };10697 10690 B22279240D00BF210071B782 /* SVGSVGElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGSVGElement.cpp; sourceTree = "<group>"; }; 10698 10691 B22279250D00BF210071B782 /* SVGSVGElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGSVGElement.h; sourceTree = "<group>"; }; … … 11114 11107 B2FA3D110AB75A6E000E5AC4 /* JSSVGStringList.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGStringList.h; sourceTree = "<group>"; }; 11115 11108 B2FA3D120AB75A6E000E5AC4 /* JSSVGStyleElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGStyleElement.cpp; sourceTree = "<group>"; }; 11116 B2FA3D120AB75A6E000E5AC5 /* JSSVGStyledElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGStyledElement.cpp; sourceTree = "<group>"; };11117 11109 B2FA3D130AB75A6E000E5AC4 /* JSSVGStyleElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGStyleElement.h; sourceTree = "<group>"; }; 11118 B2FA3D130AB75A6E000E5AC5 /* JSSVGStyledElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGStyledElement.h; sourceTree = "<group>"; };11119 11110 B2FA3D140AB75A6F000E5AC4 /* JSSVGSVGElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGSVGElement.cpp; sourceTree = "<group>"; }; 11120 11111 B2FA3D150AB75A6F000E5AC4 /* JSSVGSVGElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSSVGSVGElement.h; sourceTree = "<group>"; }; … … 17097 17088 B2FA3D100AB75A6E000E5AC4 /* JSSVGStringList.cpp */, 17098 17089 B2FA3D110AB75A6E000E5AC4 /* JSSVGStringList.h */, 17099 B2FA3D120AB75A6E000E5AC5 /* JSSVGStyledElement.cpp */,17100 B2FA3D130AB75A6E000E5AC5 /* JSSVGStyledElement.h */,17101 17090 B2FA3D120AB75A6E000E5AC4 /* JSSVGStyleElement.cpp */, 17102 17091 B2FA3D130AB75A6E000E5AC4 /* JSSVGStyleElement.h */, … … 18076 18065 B22279160D00BF210071B782 /* SVGStringList.h */, 18077 18066 B22279170D00BF210071B782 /* SVGStringList.idl */, 18078 B22279210D00BF210071B783 /* SVGStyledElement.cpp */,18079 B22279220D00BF210071B783 /* SVGStyledElement.h */,18080 B22279230D00BF210071B783 /* SVGStyledElement.idl */,18081 18067 B22279210D00BF210071B782 /* SVGStyleElement.cpp */, 18082 18068 B22279220D00BF210071B782 /* SVGStyleElement.h */, … … 22603 22589 B2FA3DF70AB75A6F000E5AC4 /* JSSVGStopElement.h in Headers */, 22604 22590 B2FA3DF90AB75A6F000E5AC4 /* JSSVGStringList.h in Headers */, 22605 B2FA3DFB0AB75A6F000E5AC5 /* JSSVGStyledElement.h in Headers */,22606 22591 B2FA3DFB0AB75A6F000E5AC4 /* JSSVGStyleElement.h in Headers */, 22607 22592 B2FA3DFD0AB75A6F000E5AC4 /* JSSVGSVGElement.h in Headers */, … … 23617 23602 B2227AA90D00BF220071B782 /* SVGStopElement.h in Headers */, 23618 23603 B2227AAC0D00BF220071B782 /* SVGStringList.h in Headers */, 23619 B2227AB80D00BF220071B783 /* SVGStyledElement.h in Headers */,23620 23604 B2227AB80D00BF220071B782 /* SVGStyleElement.h in Headers */, 23621 23605 B2227ABB0D00BF220071B782 /* SVGSVGElement.h in Headers */, … … 25798 25782 B2FA3DF60AB75A6F000E5AC4 /* JSSVGStopElement.cpp in Sources */, 25799 25783 B2FA3DF80AB75A6F000E5AC4 /* JSSVGStringList.cpp in Sources */, 25800 B2FA3DFA0AB75A6F000E5AC5 /* JSSVGStyledElement.cpp in Sources */,25801 25784 B2FA3DFA0AB75A6F000E5AC4 /* JSSVGStyleElement.cpp in Sources */, 25802 25785 B2FA3DFC0AB75A6F000E5AC4 /* JSSVGSVGElement.cpp in Sources */, … … 26657 26640 B2227AA80D00BF220071B782 /* SVGStopElement.cpp in Sources */, 26658 26641 B2227AAB0D00BF220071B782 /* SVGStringList.cpp in Sources */, 26659 B2227AB70D00BF220071B783 /* SVGStyledElement.cpp in Sources */,26660 26642 B2227AB70D00BF220071B782 /* SVGStyleElement.cpp in Sources */, 26661 26643 B2227ABA0D00BF220071B782 /* SVGSVGElement.cpp in Sources */, -
trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp
r154058 r154462 69 69 #include "SVGElement.h" 70 70 #include "SVGNames.h" 71 #include "SVGStyledElement.h"72 71 #include "Text.h" 73 72 #include "TextControlInnerElements.h" … … 1223 1222 #if ENABLE(SVG) 1224 1223 // SVG elements all can have a <svg:title> element inside which should act as the descriptive text. 1225 if (node->isSVGElement() && toSVGElement(node)->isSVGStyledElement())1226 textOrder.append(AccessibilityText(toSVG StyledElement(node)->title(), AlternativeText));1224 if (node->isSVGElement()) 1225 textOrder.append(AccessibilityText(toSVGElement(node)->title(), AlternativeText)); 1227 1226 #endif 1228 1227 … … 1422 1421 #if ENABLE(SVG) 1423 1422 // SVG elements all can have a <svg:title> element inside which should act as the descriptive text. 1424 if (m_node && m_node->isSVGElement() && toSVGElement(m_node)->isSVGStyledElement())1425 return toSVG StyledElement(m_node)->title();1423 if (m_node && m_node->isSVGElement()) 1424 return toSVGElement(m_node)->title(); 1426 1425 #endif 1427 1426 -
trunk/Source/WebCore/css/SVGCSSStyleSelector.cpp
r151783 r154462 38 38 #include "ShadowValue.h" 39 39 #include "SVGColor.h" 40 #include "SVGElement.h" 40 41 #include "SVGNames.h" 41 42 #include "SVGPaint.h" 42 43 #include "SVGRenderStyle.h" 43 44 #include "SVGRenderStyleDefs.h" 44 #include "SVGStyledElement.h"45 45 #include "SVGURIReference.h" 46 46 #include <stdlib.h> -
trunk/Source/WebCore/rendering/style/SVGRenderStyle.cpp
r153914 r154462 35 35 #include "IntRect.h" 36 36 #include "NodeRenderStyle.h" 37 #include "SVG StyledElement.h"37 #include "SVGElement.h" 38 38 39 39 using namespace std; -
trunk/Source/WebCore/rendering/svg/RenderSVGContainer.cpp
r150355 r154462 32 32 #include "RenderSVGResourceFilter.h" 33 33 #include "RenderView.h" 34 #include "SVGElement.h" 34 35 #include "SVGRenderingContext.h" 35 36 #include "SVGResources.h" 36 37 #include "SVGResourcesCache.h" 37 #include "SVGStyledElement.h"38 38 #include <wtf/StackStats.h> 39 39 40 40 namespace WebCore { 41 41 42 RenderSVGContainer::RenderSVGContainer(SVG StyledElement* node)42 RenderSVGContainer::RenderSVGContainer(SVGElement* node) 43 43 : RenderSVGModelObject(node) 44 44 , m_objectBoundingBoxValid(false) -
trunk/Source/WebCore/rendering/svg/RenderSVGContainer.h
r153380 r154462 34 34 class RenderSVGContainer : public RenderSVGModelObject { 35 35 public: 36 explicit RenderSVGContainer(SVG StyledElement*);36 explicit RenderSVGContainer(SVGElement*); 37 37 virtual ~RenderSVGContainer(); 38 38 -
trunk/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp
r148536 r154462 24 24 25 25 #include "RenderSVGPath.h" 26 #include "SVG StyledElement.h"26 #include "SVGElement.h" 27 27 #include <wtf/StackStats.h> 28 28 29 29 namespace WebCore { 30 30 31 RenderSVGHiddenContainer::RenderSVGHiddenContainer(SVG StyledElement* element)31 RenderSVGHiddenContainer::RenderSVGHiddenContainer(SVGElement* element) 32 32 : RenderSVGContainer(element) 33 33 { -
trunk/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h
r153380 r154462 26 26 namespace WebCore { 27 27 28 class SVG StyledElement;28 class SVGElement; 29 29 30 30 // This class is for containers which are never drawn, but do need to support style … … 32 32 class RenderSVGHiddenContainer : public RenderSVGContainer { 33 33 public: 34 explicit RenderSVGHiddenContainer(SVG StyledElement*);34 explicit RenderSVGHiddenContainer(SVGElement*); 35 35 36 36 virtual const char* renderName() const OVERRIDE { return "RenderSVGHiddenContainer"; } -
trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp
r154165 r154462 36 36 #include "RenderLayerModelObject.h" 37 37 #include "RenderSVGResource.h" 38 #include "SVGElement.h" 38 39 #include "SVGNames.h" 39 40 #include "SVGResourcesCache.h" 40 #include "SVGStyledElement.h"41 41 #include "ShadowRoot.h" 42 42 43 43 namespace WebCore { 44 44 45 RenderSVGModelObject::RenderSVGModelObject(SVG StyledElement* node)45 RenderSVGModelObject::RenderSVGModelObject(SVGElement* node) 46 46 : RenderObject(node) 47 47 , m_hasSVGShadow(false) … … 134 134 while (current && current->isSVGElement()) { 135 135 SVGElement* currentElement = toSVGElement(current); 136 if (currentElement->isSVGStyledElement()) { 137 localTransform = currentElement->renderer()->localToParentTransform(); 138 transform = localTransform.multiply(transform); 139 } 136 localTransform = currentElement->renderer()->localToParentTransform(); 137 transform = localTransform.multiply(transform); 140 138 // For getCTM() computation, stop at the nearest viewport element 141 139 if (currentElement == stopAtElement) -
trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.h
r153380 r154462 44 44 // logic can go in this class or in SVGRenderSupport. 45 45 46 class SVG StyledElement;46 class SVGElement; 47 47 48 48 class RenderSVGModelObject : public RenderObject { 49 49 public: 50 explicit RenderSVGModelObject(SVG StyledElement*);50 explicit RenderSVGModelObject(SVGElement*); 51 51 52 52 virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObject* repaintContainer) const OVERRIDE; -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp
r152963 r154462 46 46 #include "SVGResources.h" 47 47 #include "SVGResourcesCache.h" 48 #include "SVGStyledElement.h"49 48 #include "SVGUnitTypes.h" 50 49 #include "SVGUseElement.h" … … 234 233 for (Node* childNode = node()->firstChild(); childNode; childNode = childNode->nextSibling()) { 235 234 RenderObject* renderer = childNode->renderer(); 236 if (!childNode->isSVGElement() || ! toSVGElement(childNode)->isSVGStyledElement() || !renderer)235 if (!childNode->isSVGElement() || !renderer) 237 236 continue; 238 237 if (renderer->needsLayout()) { … … 276 275 for (Node* childNode = node()->firstChild(); childNode; childNode = childNode->nextSibling()) { 277 276 RenderObject* renderer = childNode->renderer(); 278 if (!childNode->isSVGElement() || ! toSVGElement(childNode)->isSVGStyledElement() || !renderer)277 if (!childNode->isSVGElement() || !renderer) 279 278 continue; 280 279 if (!renderer->isSVGShape() && !renderer->isSVGText() && !childNode->hasTagName(SVGNames::useTag)) … … 306 305 for (Node* childNode = node()->firstChild(); childNode; childNode = childNode->nextSibling()) { 307 306 RenderObject* renderer = childNode->renderer(); 308 if (!childNode->isSVGElement() || ! toSVGElement(childNode)->isSVGStyledElement() || !renderer)307 if (!childNode->isSVGElement() || !renderer) 309 308 continue; 310 309 if (!renderer->isSVGShape() && !renderer->isSVGText() && !childNode->hasTagName(SVGNames::useTag)) -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceContainer.cpp
r152167 r154462 40 40 } 41 41 42 RenderSVGResourceContainer::RenderSVGResourceContainer(SVG StyledElement* node)42 RenderSVGResourceContainer::RenderSVGResourceContainer(SVGElement* node) 43 43 : RenderSVGHiddenContainer(node) 44 44 , m_id(node->getIdAttribute()) -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceContainer.h
r153380 r154462 32 32 public RenderSVGResource { 33 33 public: 34 RenderSVGResourceContainer(SVG StyledElement*);34 RenderSVGResourceContainer(SVGElement*); 35 35 virtual ~RenderSVGResourceContainer(); 36 36 -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp
r153927 r154462 45 45 #include "SVGNames.h" 46 46 #include "SVGRenderingContext.h" 47 #include "SVGStyledElement.h"48 47 #include "SVGUnitTypes.h" 49 48 #include "Settings.h" -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilterPrimitive.h
r153380 r154462 39 39 class RenderSVGResourceFilterPrimitive FINAL : public RenderSVGHiddenContainer { 40 40 public: 41 explicit RenderSVGResourceFilterPrimitive(SVG StyledElement* filterPrimitiveElement)41 explicit RenderSVGResourceFilterPrimitive(SVGElement* filterPrimitiveElement) 42 42 : RenderSVGHiddenContainer(filterPrimitiveElement) 43 43 { -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.cpp
r152826 r154462 32 32 #include "SVGMarkerElement.h" 33 33 #include "SVGRenderSupport.h" 34 #include "SVGStyledElement.h"35 34 #include <wtf/StackStats.h> 36 35 -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.h
r153380 r154462 24 24 #include "FloatRect.h" 25 25 #include "RenderSVGResourceContainer.h" 26 #include "SVGElement.h" 26 27 #include "SVGMarkerElement.h" 27 #include "SVGStyledElement.h"28 28 29 29 #include <wtf/HashSet.h> -
trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp
r153687 r154462 35 35 #include "SVGMaskElement.h" 36 36 #include "SVGRenderingContext.h" 37 #include "SVGStyledElement.h"38 37 #include "SVGUnitTypes.h" 39 38 #include <wtf/Vector.h> … … 136 135 for (Node* node = maskElement->firstChild(); node; node = node->nextSibling()) { 137 136 RenderObject* renderer = node->renderer(); 138 if (!node->isSVGElement() || ! toSVGElement(node)->isSVGStyledElement() || !renderer)137 if (!node->isSVGElement() || !renderer) 139 138 continue; 140 139 if (renderer->needsLayout()) … … 165 164 for (Node* childNode = node()->firstChild(); childNode; childNode = childNode->nextSibling()) { 166 165 RenderObject* renderer = childNode->renderer(); 167 if (!childNode->isSVGElement() || ! toSVGElement(childNode)->isSVGStyledElement() || !renderer)166 if (!childNode->isSVGElement() || !renderer) 168 167 continue; 169 168 RenderStyle* style = renderer->style(); -
trunk/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp
r153297 r154462 274 274 // Draw the content into the ImageBuffer. 275 275 for (Node* node = attributes.patternContentElement()->firstChild(); node; node = node->nextSibling()) { 276 if (!node->isSVGElement() || ! toSVGElement(node)->isSVGStyledElement() || !node->renderer())276 if (!node->isSVGElement() || !node->renderer()) 277 277 continue; 278 278 if (node->renderer()->needsLayout()) -
trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp
r153876 r154462 39 39 #include "RenderSVGResourceContainer.h" 40 40 #include "RenderView.h" 41 #include "SVGElement.h" 41 42 #include "SVGImage.h" 42 43 #include "SVGLength.h" … … 45 46 #include "SVGResourcesCache.h" 46 47 #include "SVGSVGElement.h" 47 #include "SVGStyledElement.h"48 48 #include "SVGViewSpec.h" 49 49 #include "TransformState.h" … … 58 58 namespace WebCore { 59 59 60 RenderSVGRoot::RenderSVGRoot(SVG StyledElement* node)60 RenderSVGRoot::RenderSVGRoot(SVGElement* node) 61 61 : RenderReplaced(node) 62 62 , m_objectBoundingBoxValid(false) -
trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h
r153380 r154462 33 33 34 34 class AffineTransform; 35 class SVG StyledElement;35 class SVGElement; 36 36 37 37 class RenderSVGRoot FINAL : public RenderReplaced { 38 38 public: 39 explicit RenderSVGRoot(SVG StyledElement*);39 explicit RenderSVGRoot(SVGElement*); 40 40 virtual ~RenderSVGRoot(); 41 41 -
trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.cpp
r146495 r154462 35 35 namespace WebCore { 36 36 37 RenderSVGViewportContainer::RenderSVGViewportContainer(SVG StyledElement* node)37 RenderSVGViewportContainer::RenderSVGViewportContainer(SVGElement* node) 38 38 : RenderSVGContainer(node) 39 39 , m_didTransformToRootUpdate(false) -
trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.h
r153380 r154462 33 33 class RenderSVGViewportContainer FINAL : public RenderSVGContainer { 34 34 public: 35 explicit RenderSVGViewportContainer(SVG StyledElement*);35 explicit RenderSVGViewportContainer(SVGElement*); 36 36 FloatRect viewport() const { return m_viewport; } 37 37 -
trunk/Source/WebCore/rendering/svg/SVGRenderSupport.cpp
r149980 r154462 39 39 #include "RenderSVGText.h" 40 40 #include "RenderSVGViewportContainer.h" 41 #include "SVGElement.h" 41 42 #include "SVGResources.h" 42 43 #include "SVGResourcesCache.h" 43 #include "SVGStyledElement.h"44 44 #include "TransformState.h" 45 45 … … 255 255 // When selfNeedsLayout is false and the layout size changed, we have to check whether this child uses relative lengths 256 256 if (SVGElement* element = child->node()->isSVGElement() ? toSVGElement(child->node()) : 0) { 257 if (element-> isSVGStyledElement() && toSVGStyledElement(element)->hasRelativeLengths()) {257 if (element->hasRelativeLengths()) { 258 258 // When the layout size changed and when using relative values tell the RenderSVGShape to update its shape object 259 259 if (child->isSVGShape()) -
trunk/Source/WebCore/rendering/svg/SVGRenderTreeAsText.cpp
r154440 r154462 60 60 #include "RenderTreeAsText.h" 61 61 #include "SVGCircleElement.h" 62 #include "SVGElement.h" 62 63 #include "SVGEllipseElement.h" 63 64 #include "SVGInlineTextBox.h" … … 74 75 #include "SVGRootInlineBox.h" 75 76 #include "SVGStopElement.h" 76 #include "SVGStyledElement.h"77 77 78 78 #include <math.h> -
trunk/Source/WebCore/rendering/svg/SVGResources.cpp
r153297 r154462 180 180 { 181 181 ASSERT(element); 182 ASSERT_WITH_SECURITY_IMPLICATION(element->isSVGStyledElement()); 183 extensions->addPendingResource(id, toSVGStyledElement(element)); 182 extensions->addPendingResource(id, element); 184 183 } 185 184 -
trunk/Source/WebCore/rendering/svg/SVGResourcesCache.cpp
r150259 r154462 25 25 #include "RenderSVGResourceContainer.h" 26 26 #include "SVGDocumentExtensions.h" 27 #include "SVGElement.h" 27 28 #include "SVGResources.h" 28 29 #include "SVGResourcesCycleSolver.h" 29 #include "SVGStyledElement.h"30 30 31 31 namespace WebCore { -
trunk/Source/WebCore/svg/SVGAElement.cpp
r154371 r154462 84 84 85 85 // Otherwise, use the title of this element. 86 return SVG StyledElement::title();86 return SVGElement::title(); 87 87 } 88 88 -
trunk/Source/WebCore/svg/SVGAllInOne.cpp
r152553 r154462 158 158 #include "SVGStringList.cpp" 159 159 #include "SVGStyleElement.cpp" 160 #include "SVGStyledElement.cpp"161 160 #include "SVGSwitchElement.cpp" 162 161 #include "SVGSymbolElement.cpp" -
trunk/Source/WebCore/svg/SVGAltGlyphDefElement.h
r149960 r154462 35 35 private: 36 36 SVGAltGlyphDefElement(const QualifiedName&, Document*); 37 38 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 37 39 }; 38 40 -
trunk/Source/WebCore/svg/SVGAltGlyphItemElement.h
r149960 r154462 35 35 private: 36 36 SVGAltGlyphItemElement(const QualifiedName&, Document*); 37 38 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 37 39 }; 38 40 -
trunk/Source/WebCore/svg/SVGAnimateElement.cpp
r154266 r154462 31 31 #include "RenderObject.h" 32 32 #include "SVGAnimatorFactory.h" 33 #include "SVGElement.h" 33 34 #include "SVGNames.h" 34 #include "SVGStyledElement.h"35 35 #include "StylePropertySet.h" 36 36 -
trunk/Source/WebCore/svg/SVGAnimatedType.cpp
r115950 r154462 252 252 return *m_data.string; 253 253 254 // These types don't appear in the table in SVG StyledElement::cssPropertyToTypeMap() and thus don't need valueAsString() support.254 // These types don't appear in the table in SVGElement::cssPropertyToTypeMap() and thus don't need valueAsString() support. 255 255 case AnimatedAngle: 256 256 case AnimatedBoolean: … … 303 303 break; 304 304 305 // These types don't appear in the table in SVG StyledElement::cssPropertyToTypeMap() and thus don't need setValueAsString() support.305 // These types don't appear in the table in SVGElement::cssPropertyToTypeMap() and thus don't need setValueAsString() support. 306 306 case AnimatedAngle: 307 307 case AnimatedBoolean: -
trunk/Source/WebCore/svg/SVGAnimationElement.cpp
r154266 r154462 36 36 #include "RenderObject.h" 37 37 #include "SVGAnimateElement.h" 38 #include "SVGElement.h" 38 39 #include "SVGElementInstance.h" 39 40 #include "SVGNames.h" 40 41 #include "SVGParserUtilities.h" 41 #include "SVGStyledElement.h"42 42 #include <wtf/MathExtras.h> 43 43 … … 352 352 } 353 353 354 bool SVGAnimationElement::isTargetAttributeCSSProperty(SVGElement* targetElement, const QualifiedName& attributeName) 355 { 356 ASSERT(targetElement); 357 if (!targetElement->isSVGStyledElement()) 358 return false; 359 360 return SVGStyledElement::isAnimatableCSSProperty(attributeName); 354 bool SVGAnimationElement::isTargetAttributeCSSProperty(SVGElement*, const QualifiedName& attributeName) 355 { 356 return SVGElement::isAnimatableCSSProperty(attributeName); 361 357 } 362 358 … … 635 631 { 636 632 ASSERT(element); 637 ASSERT(element->isSVGStyledElement());638 633 639 634 // Don't include any properties resulting from CSS Transitions/Animations or SMIL animations, as we want to retrieve the "base value". … … 655 650 656 651 SVGElement* svgParent = toSVGElement(parent); 657 if (!svgParent->isSVGStyledElement())658 return;659 652 computeCSSPropertyValue(svgParent, cssPropertyID(attributeName.localName()), value); 660 653 } 661 654 662 static bool inheritsFromProperty(SVGElement* targetElement, const QualifiedName& attributeName, const String& value) 663 { 664 ASSERT(targetElement); 655 static bool inheritsFromProperty(SVGElement*, const QualifiedName& attributeName, const String& value) 656 { 665 657 DEFINE_STATIC_LOCAL(const AtomicString, inherit, ("inherit", AtomicString::ConstructFromLiteral)); 666 658 667 if (value.isEmpty() || value != inherit || !targetElement->isSVGStyledElement())659 if (value.isEmpty() || value != inherit) 668 660 return false; 669 return SVG StyledElement::isAnimatableCSSProperty(attributeName);661 return SVGElement::isAnimatableCSSProperty(attributeName); 670 662 } 671 663 -
trunk/Source/WebCore/svg/SVGComponentTransferFunctionElement.h
r135069 r154462 81 81 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE; 82 82 virtual void svgAttributeChanged(const QualifiedName&); 83 84 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 83 85 84 86 private: -
trunk/Source/WebCore/svg/SVGCursorElement.h
r149960 r154462 55 55 virtual void svgAttributeChanged(const QualifiedName&); 56 56 57 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 58 57 59 virtual void addSubresourceAttributeURLs(ListHashSet<KURL>&) const; 58 60 -
trunk/Source/WebCore/svg/SVGDescElement.cpp
r86050 r154462 27 27 28 28 inline SVGDescElement::SVGDescElement(const QualifiedName& tagName, Document* document) 29 : SVG StyledElement(tagName, document)29 : SVGElement(tagName, document) 30 30 { 31 31 ASSERT(hasTagName(SVGNames::descTag)); -
trunk/Source/WebCore/svg/SVGDescElement.h
r154358 r154462 23 23 24 24 #if ENABLE(SVG) 25 #include "SVG StyledElement.h"25 #include "SVGElement.h" 26 26 27 27 namespace WebCore { 28 28 29 class SVGDescElement FINAL : public SVG StyledElement {29 class SVGDescElement FINAL : public SVGElement { 30 30 public: 31 31 static PassRefPtr<SVGDescElement> create(const QualifiedName&, Document*); -
trunk/Source/WebCore/svg/SVGDescElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGDescElement : SVG StyledElement {28 ] interface SVGDescElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGElement.cpp
r154443 r154462 5 5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> 6 6 * Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> 7 * Copyright (C) 2013 Samsung Electronics. All rights reserved. 7 8 * 8 9 * This library is free software; you can redistribute it and/or … … 27 28 #include "SVGElement.h" 28 29 30 #include "Attr.h" 29 31 #include "CSSCursorImageValue.h" 32 #include "CSSParser.h" 30 33 #include "DOMImplementation.h" 31 34 #include "Document.h" 35 #include "ElementTraversal.h" 32 36 #include "Event.h" 37 #include "EventNames.h" 33 38 #include "HTMLNames.h" 34 39 #include "RenderObject.h" 40 #include "RenderSVGResource.h" 41 #include "RenderSVGResourceClipper.h" 42 #include "RenderSVGResourceFilter.h" 43 #include "RenderSVGResourceMasker.h" 35 44 #include "SVGCursorElement.h" 36 45 #include "SVGDocumentExtensions.h" … … 40 49 #include "SVGImageElement.h" 41 50 #include "SVGNames.h" 51 #include "SVGRenderStyle.h" 52 #include "SVGRenderSupport.h" 42 53 #include "SVGSVGElement.h" 54 #include "SVGUseElement.h" 43 55 #include "ScriptEventListener.h" 44 56 #include "ShadowRoot.h" 45 57 #include "XLinkNames.h" 46 58 #include "XMLNames.h" 59 #include <wtf/Assertions.h> 60 #include <wtf/HashMap.h> 61 #include <wtf/StdLibExtras.h> 62 #include <wtf/text/WTFString.h> 63 47 64 48 65 namespace WebCore { 49 66 67 // Animated property definitions 68 DEFINE_ANIMATED_STRING(SVGElement, HTMLNames::classAttr, ClassName, className) 69 70 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGElement) 71 REGISTER_LOCAL_ANIMATED_PROPERTY(className) 72 END_REGISTER_ANIMATED_PROPERTIES 73 50 74 using namespace HTMLNames; 75 using namespace SVGNames; 76 77 void mapAttributeToCSSProperty(HashMap<AtomicStringImpl*, CSSPropertyID>* propertyNameToIdMap, const QualifiedName& attrName) 78 { 79 // FIXME: when CSS supports "transform-origin" the special case for transform_originAttr can be removed. 80 CSSPropertyID propertyId = cssPropertyID(attrName.localName()); 81 if (!propertyId && attrName == transform_originAttr) 82 propertyId = CSSPropertyWebkitTransformOrigin; // cssPropertyID("-webkit-transform-origin") 83 ASSERT(propertyId > 0); 84 propertyNameToIdMap->set(attrName.localName().impl(), propertyId); 85 } 86 87 typedef HashMap<QualifiedName, AnimatedPropertyType> AttributeToPropertyTypeMap; 88 static inline AttributeToPropertyTypeMap& cssPropertyToTypeMap() 89 { 90 DEFINE_STATIC_LOCAL(AttributeToPropertyTypeMap, s_cssPropertyMap, ()); 91 92 if (!s_cssPropertyMap.isEmpty()) 93 return s_cssPropertyMap; 94 95 // Fill the map for the first use. 96 s_cssPropertyMap.set(alignment_baselineAttr, AnimatedString); 97 s_cssPropertyMap.set(baseline_shiftAttr, AnimatedString); 98 s_cssPropertyMap.set(buffered_renderingAttr, AnimatedString); 99 s_cssPropertyMap.set(clipAttr, AnimatedRect); 100 s_cssPropertyMap.set(clip_pathAttr, AnimatedString); 101 s_cssPropertyMap.set(clip_ruleAttr, AnimatedString); 102 s_cssPropertyMap.set(SVGNames::colorAttr, AnimatedColor); 103 s_cssPropertyMap.set(color_interpolationAttr, AnimatedString); 104 s_cssPropertyMap.set(color_interpolation_filtersAttr, AnimatedString); 105 s_cssPropertyMap.set(color_profileAttr, AnimatedString); 106 s_cssPropertyMap.set(color_renderingAttr, AnimatedString); 107 s_cssPropertyMap.set(cursorAttr, AnimatedString); 108 s_cssPropertyMap.set(displayAttr, AnimatedString); 109 s_cssPropertyMap.set(dominant_baselineAttr, AnimatedString); 110 s_cssPropertyMap.set(fillAttr, AnimatedColor); 111 s_cssPropertyMap.set(fill_opacityAttr, AnimatedNumber); 112 s_cssPropertyMap.set(fill_ruleAttr, AnimatedString); 113 s_cssPropertyMap.set(filterAttr, AnimatedString); 114 s_cssPropertyMap.set(flood_colorAttr, AnimatedColor); 115 s_cssPropertyMap.set(flood_opacityAttr, AnimatedNumber); 116 s_cssPropertyMap.set(font_familyAttr, AnimatedString); 117 s_cssPropertyMap.set(font_sizeAttr, AnimatedLength); 118 s_cssPropertyMap.set(font_stretchAttr, AnimatedString); 119 s_cssPropertyMap.set(font_styleAttr, AnimatedString); 120 s_cssPropertyMap.set(font_variantAttr, AnimatedString); 121 s_cssPropertyMap.set(font_weightAttr, AnimatedString); 122 s_cssPropertyMap.set(image_renderingAttr, AnimatedString); 123 s_cssPropertyMap.set(kerningAttr, AnimatedLength); 124 s_cssPropertyMap.set(letter_spacingAttr, AnimatedLength); 125 s_cssPropertyMap.set(lighting_colorAttr, AnimatedColor); 126 s_cssPropertyMap.set(marker_endAttr, AnimatedString); 127 s_cssPropertyMap.set(marker_midAttr, AnimatedString); 128 s_cssPropertyMap.set(marker_startAttr, AnimatedString); 129 s_cssPropertyMap.set(maskAttr, AnimatedString); 130 s_cssPropertyMap.set(mask_typeAttr, AnimatedString); 131 s_cssPropertyMap.set(opacityAttr, AnimatedNumber); 132 s_cssPropertyMap.set(overflowAttr, AnimatedString); 133 s_cssPropertyMap.set(pointer_eventsAttr, AnimatedString); 134 s_cssPropertyMap.set(shape_renderingAttr, AnimatedString); 135 s_cssPropertyMap.set(stop_colorAttr, AnimatedColor); 136 s_cssPropertyMap.set(stop_opacityAttr, AnimatedNumber); 137 s_cssPropertyMap.set(strokeAttr, AnimatedColor); 138 s_cssPropertyMap.set(stroke_dasharrayAttr, AnimatedLengthList); 139 s_cssPropertyMap.set(stroke_dashoffsetAttr, AnimatedLength); 140 s_cssPropertyMap.set(stroke_linecapAttr, AnimatedString); 141 s_cssPropertyMap.set(stroke_linejoinAttr, AnimatedString); 142 s_cssPropertyMap.set(stroke_miterlimitAttr, AnimatedNumber); 143 s_cssPropertyMap.set(stroke_opacityAttr, AnimatedNumber); 144 s_cssPropertyMap.set(stroke_widthAttr, AnimatedLength); 145 s_cssPropertyMap.set(text_anchorAttr, AnimatedString); 146 s_cssPropertyMap.set(text_decorationAttr, AnimatedString); 147 s_cssPropertyMap.set(text_renderingAttr, AnimatedString); 148 s_cssPropertyMap.set(vector_effectAttr, AnimatedString); 149 s_cssPropertyMap.set(visibilityAttr, AnimatedString); 150 s_cssPropertyMap.set(word_spacingAttr, AnimatedLength); 151 return s_cssPropertyMap; 152 } 51 153 52 154 SVGElement::SVGElement(const QualifiedName& tagName, Document* document) 53 155 : StyledElement(tagName, document, CreateSVGElement) 54 156 { 157 registerAnimatedPropertiesForSVGElement(); 55 158 } 56 159 … … 77 180 ASSERT(it != rareDataMap.end()); 78 181 rareDataMap.remove(it); 182 183 // Clear HasSVGRareData flag now so that we are in a consistent state when 184 // calling rebuildAllElementReferencesForTarget() and 185 // removeAllElementReferencesForTarget() below. 186 clearHasSVGRareData(); 79 187 } 80 188 ASSERT(document()); … … 175 283 { 176 284 bool wasInDocument = rootParent->inDocument(); 285 if (wasInDocument) 286 updateRelativeLengthsInformation(false, this); 177 287 178 288 StyledElement::removedFrom(rootParent); … … 182 292 document()->accessSVGExtensions()->removeAllElementReferencesForTarget(this); 183 293 } 294 SVGElementInstance::invalidateAllInstancesOfElement(this); 184 295 } 185 296 … … 330 441 else if (name == SVGNames::onactivateAttr) 331 442 setAttributeEventListener(eventNames().DOMActivateEvent, createAttributeEventListener(this, name, value)); 443 else if (name == HTMLNames::classAttr) 444 setClassNameBaseValue(value); 332 445 else if (SVGLangSpace::parseAttribute(name, value)) { 333 446 } else … … 338 451 { 339 452 localAttributeToPropertyMap().animatedPropertyTypeForAttribute(attributeName, propertyTypes); 453 454 if (!propertyTypes.isEmpty()) 455 return; 456 457 AttributeToPropertyTypeMap& cssPropertyTypeMap = cssPropertyToTypeMap(); 458 if (cssPropertyTypeMap.contains(attributeName)) 459 propertyTypes.append(cssPropertyTypeMap.get(attributeName)); 340 460 } 341 461 … … 357 477 return; 358 478 359 if (!element->isSVGStyledElement()) 360 return; 361 362 SVGStyledElement* styledElement = toSVGStyledElement(element); 363 ASSERT(!styledElement->instanceUpdatesBlocked()); 364 365 instances = styledElement->instancesForElement(); 479 ASSERT(!element->instanceUpdatesBlocked()); 480 481 instances = element->instancesForElement(); 366 482 } 367 483 … … 562 678 } else 563 679 nonConstThis->localAttributeToPropertyMap().synchronizeProperty(nonConstThis, name); 564 }565 566 SVGAttributeToPropertyMap& SVGElement::localAttributeToPropertyMap()567 {568 DEFINE_STATIC_LOCAL(SVGAttributeToPropertyMap, emptyMap, ());569 return emptyMap;570 680 } 571 681 … … 736 846 737 847 if (name == classAttr) 738 return isSVGStyledElement();848 return true; 739 849 740 850 return animatableAttributes.contains(name); … … 742 852 #endif 743 853 854 String SVGElement::title() const 855 { 856 // According to spec, we should not return titles when hovering over root <svg> elements (those 857 // <title> elements are the title of the document, not a tooltip) so we instantly return. 858 if (isOutermostSVGSVGElement()) 859 return String(); 860 861 // Walk up the tree, to find out whether we're inside a <use> shadow tree, to find the right title. 862 if (isInShadowTree()) { 863 Element* shadowHostElement = toShadowRoot(treeScope()->rootNode())->hostElement(); 864 // At this time, SVG nodes are not allowed in non-<use> shadow trees, so any shadow root we do 865 // have should be a use. The assert and following test is here to catch future shadow DOM changes 866 // that do enable SVG in a shadow tree. 867 ASSERT(!shadowHostElement || shadowHostElement->hasTagName(SVGNames::useTag)); 868 if (shadowHostElement && shadowHostElement->hasTagName(SVGNames::useTag)) { 869 SVGUseElement* useElement = toSVGUseElement(shadowHostElement); 870 871 // If the <use> title is not empty we found the title to use. 872 String useTitle(useElement->title()); 873 if (!useTitle.isEmpty()) 874 return useTitle; 875 } 876 } 877 878 // If we aren't an instance in a <use> or the <use> title was not found, then find the first 879 // <title> child of this element. 880 Element* titleElement = ElementTraversal::firstWithin(this); 881 for (; titleElement; titleElement = ElementTraversal::nextSibling(titleElement)) { 882 if (titleElement->hasTagName(SVGNames::titleTag) && titleElement->isSVGElement()) 883 break; 884 } 885 886 // If a title child was found, return the text contents. 887 if (titleElement) 888 return titleElement->innerText(); 889 890 // Otherwise return a null/empty string. 891 return String(); 892 } 893 894 bool SVGElement::rendererIsNeeded(const RenderStyle& style) 895 { 896 // http://www.w3.org/TR/SVG/extend.html#PrivateData 897 // Prevent anything other than SVG renderers from appearing in our render tree 898 // Spec: SVG allows inclusion of elements from foreign namespaces anywhere 899 // with the SVG content. In general, the SVG user agent will include the unknown 900 // elements in the DOM but will otherwise ignore unknown elements. 901 if (!parentOrShadowHostElement() || parentOrShadowHostElement()->isSVGElement()) 902 return StyledElement::rendererIsNeeded(style); 903 904 return false; 905 } 906 907 CSSPropertyID SVGElement::cssPropertyIdForSVGAttributeName(const QualifiedName& attrName) 908 { 909 if (!attrName.namespaceURI().isNull()) 910 return CSSPropertyInvalid; 911 912 static HashMap<AtomicStringImpl*, CSSPropertyID>* propertyNameToIdMap = 0; 913 if (!propertyNameToIdMap) { 914 propertyNameToIdMap = new HashMap<AtomicStringImpl*, CSSPropertyID>; 915 // This is a list of all base CSS and SVG CSS properties which are exposed as SVG XML attributes 916 mapAttributeToCSSProperty(propertyNameToIdMap, alignment_baselineAttr); 917 mapAttributeToCSSProperty(propertyNameToIdMap, baseline_shiftAttr); 918 mapAttributeToCSSProperty(propertyNameToIdMap, buffered_renderingAttr); 919 mapAttributeToCSSProperty(propertyNameToIdMap, clipAttr); 920 mapAttributeToCSSProperty(propertyNameToIdMap, clip_pathAttr); 921 mapAttributeToCSSProperty(propertyNameToIdMap, clip_ruleAttr); 922 mapAttributeToCSSProperty(propertyNameToIdMap, SVGNames::colorAttr); 923 mapAttributeToCSSProperty(propertyNameToIdMap, color_interpolationAttr); 924 mapAttributeToCSSProperty(propertyNameToIdMap, color_interpolation_filtersAttr); 925 mapAttributeToCSSProperty(propertyNameToIdMap, color_profileAttr); 926 mapAttributeToCSSProperty(propertyNameToIdMap, color_renderingAttr); 927 mapAttributeToCSSProperty(propertyNameToIdMap, cursorAttr); 928 mapAttributeToCSSProperty(propertyNameToIdMap, SVGNames::directionAttr); 929 mapAttributeToCSSProperty(propertyNameToIdMap, displayAttr); 930 mapAttributeToCSSProperty(propertyNameToIdMap, dominant_baselineAttr); 931 mapAttributeToCSSProperty(propertyNameToIdMap, enable_backgroundAttr); 932 mapAttributeToCSSProperty(propertyNameToIdMap, fillAttr); 933 mapAttributeToCSSProperty(propertyNameToIdMap, fill_opacityAttr); 934 mapAttributeToCSSProperty(propertyNameToIdMap, fill_ruleAttr); 935 mapAttributeToCSSProperty(propertyNameToIdMap, filterAttr); 936 mapAttributeToCSSProperty(propertyNameToIdMap, flood_colorAttr); 937 mapAttributeToCSSProperty(propertyNameToIdMap, flood_opacityAttr); 938 mapAttributeToCSSProperty(propertyNameToIdMap, font_familyAttr); 939 mapAttributeToCSSProperty(propertyNameToIdMap, font_sizeAttr); 940 mapAttributeToCSSProperty(propertyNameToIdMap, font_stretchAttr); 941 mapAttributeToCSSProperty(propertyNameToIdMap, font_styleAttr); 942 mapAttributeToCSSProperty(propertyNameToIdMap, font_variantAttr); 943 mapAttributeToCSSProperty(propertyNameToIdMap, font_weightAttr); 944 mapAttributeToCSSProperty(propertyNameToIdMap, glyph_orientation_horizontalAttr); 945 mapAttributeToCSSProperty(propertyNameToIdMap, glyph_orientation_verticalAttr); 946 mapAttributeToCSSProperty(propertyNameToIdMap, image_renderingAttr); 947 mapAttributeToCSSProperty(propertyNameToIdMap, kerningAttr); 948 mapAttributeToCSSProperty(propertyNameToIdMap, letter_spacingAttr); 949 mapAttributeToCSSProperty(propertyNameToIdMap, lighting_colorAttr); 950 mapAttributeToCSSProperty(propertyNameToIdMap, marker_endAttr); 951 mapAttributeToCSSProperty(propertyNameToIdMap, marker_midAttr); 952 mapAttributeToCSSProperty(propertyNameToIdMap, marker_startAttr); 953 mapAttributeToCSSProperty(propertyNameToIdMap, maskAttr); 954 mapAttributeToCSSProperty(propertyNameToIdMap, mask_typeAttr); 955 mapAttributeToCSSProperty(propertyNameToIdMap, opacityAttr); 956 mapAttributeToCSSProperty(propertyNameToIdMap, overflowAttr); 957 mapAttributeToCSSProperty(propertyNameToIdMap, pointer_eventsAttr); 958 mapAttributeToCSSProperty(propertyNameToIdMap, shape_renderingAttr); 959 mapAttributeToCSSProperty(propertyNameToIdMap, stop_colorAttr); 960 mapAttributeToCSSProperty(propertyNameToIdMap, stop_opacityAttr); 961 mapAttributeToCSSProperty(propertyNameToIdMap, strokeAttr); 962 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_dasharrayAttr); 963 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_dashoffsetAttr); 964 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_linecapAttr); 965 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_linejoinAttr); 966 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_miterlimitAttr); 967 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_opacityAttr); 968 mapAttributeToCSSProperty(propertyNameToIdMap, stroke_widthAttr); 969 mapAttributeToCSSProperty(propertyNameToIdMap, text_anchorAttr); 970 mapAttributeToCSSProperty(propertyNameToIdMap, text_decorationAttr); 971 mapAttributeToCSSProperty(propertyNameToIdMap, text_renderingAttr); 972 mapAttributeToCSSProperty(propertyNameToIdMap, transform_originAttr); 973 mapAttributeToCSSProperty(propertyNameToIdMap, unicode_bidiAttr); 974 mapAttributeToCSSProperty(propertyNameToIdMap, vector_effectAttr); 975 mapAttributeToCSSProperty(propertyNameToIdMap, visibilityAttr); 976 mapAttributeToCSSProperty(propertyNameToIdMap, word_spacingAttr); 977 mapAttributeToCSSProperty(propertyNameToIdMap, writing_modeAttr); 978 } 979 980 return propertyNameToIdMap->get(attrName.localName().impl()); 981 } 982 983 bool SVGElement::isAnimatableCSSProperty(const QualifiedName& attrName) 984 { 985 return cssPropertyToTypeMap().contains(attrName); 986 } 987 988 bool SVGElement::isPresentationAttribute(const QualifiedName& name) const 989 { 990 if (cssPropertyIdForSVGAttributeName(name) > 0) 991 return true; 992 return StyledElement::isPresentationAttribute(name); 993 } 994 995 void SVGElement::collectStyleForPresentationAttribute(const QualifiedName& name, const AtomicString& value, MutableStylePropertySet* style) 996 { 997 CSSPropertyID propertyID = cssPropertyIdForSVGAttributeName(name); 998 if (propertyID > 0) 999 addPropertyToPresentationAttributeStyle(style, propertyID, value); 1000 } 1001 1002 bool SVGElement::isKnownAttribute(const QualifiedName& attrName) 1003 { 1004 return isIdAttributeName(attrName); 1005 } 1006 1007 void SVGElement::svgAttributeChanged(const QualifiedName& attrName) 1008 { 1009 CSSPropertyID propId = cssPropertyIdForSVGAttributeName(attrName); 1010 if (propId > 0) { 1011 SVGElementInstance::invalidateAllInstancesOfElement(this); 1012 return; 1013 } 1014 1015 if (attrName == HTMLNames::classAttr) { 1016 classAttributeChanged(className()); 1017 SVGElementInstance::invalidateAllInstancesOfElement(this); 1018 return; 1019 } 1020 1021 if (isIdAttributeName(attrName)) { 1022 RenderObject* object = renderer(); 1023 // Notify resources about id changes, this is important as we cache resources by id in SVGDocumentExtensions 1024 if (object && object->isSVGResourceContainer()) 1025 object->toRenderSVGResourceContainer()->idChanged(); 1026 if (inDocument()) 1027 buildPendingResourcesIfNeeded(); 1028 SVGElementInstance::invalidateAllInstancesOfElement(this); 1029 return; 1030 } 1031 } 1032 1033 Node::InsertionNotificationRequest SVGElement::insertedInto(ContainerNode* rootParent) 1034 { 1035 StyledElement::insertedInto(rootParent); 1036 updateRelativeLengthsInformation(); 1037 buildPendingResourcesIfNeeded(); 1038 return InsertionDone; 1039 } 1040 1041 void SVGElement::buildPendingResourcesIfNeeded() 1042 { 1043 Document* document = this->document(); 1044 if (!needsPendingResourceHandling() || !document || !inDocument() || isInShadowTree()) 1045 return; 1046 1047 SVGDocumentExtensions* extensions = document->accessSVGExtensions(); 1048 String resourceId = getIdAttribute(); 1049 if (!extensions->hasPendingResource(resourceId)) 1050 return; 1051 1052 // Mark pending resources as pending for removal. 1053 extensions->markPendingResourcesForRemoval(resourceId); 1054 1055 // Rebuild pending resources for each client of a pending resource that is being removed. 1056 while (Element* clientElement = extensions->removeElementFromPendingResourcesForRemoval(resourceId)) { 1057 ASSERT(clientElement->hasPendingResources()); 1058 if (clientElement->hasPendingResources()) { 1059 clientElement->buildPendingResource(); 1060 extensions->clearHasPendingResourcesIfPossible(clientElement); 1061 } 1062 } 1063 } 1064 1065 void SVGElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 1066 { 1067 StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 1068 1069 // Invalidate all SVGElementInstances associated with us 1070 if (!changedByParser) 1071 SVGElementInstance::invalidateAllInstancesOfElement(this); 1072 } 1073 1074 PassRefPtr<CSSValue> SVGElement::getPresentationAttribute(const String& name) 1075 { 1076 if (!hasAttributesWithoutUpdate()) 1077 return 0; 1078 1079 QualifiedName attributeName(nullAtom, name, nullAtom); 1080 const Attribute* attribute = findAttributeByName(attributeName); 1081 if (!attribute) 1082 return 0; 1083 1084 RefPtr<MutableStylePropertySet> style = MutableStylePropertySet::create(SVGAttributeMode); 1085 CSSPropertyID propertyID = cssPropertyIdForSVGAttributeName(attribute->name()); 1086 style->setProperty(propertyID, attribute->value()); 1087 RefPtr<CSSValue> cssValue = style->getPropertyCSSValue(propertyID); 1088 return cssValue ? cssValue->cloneForCSSOM() : 0; 1089 } 1090 1091 bool SVGElement::instanceUpdatesBlocked() const 1092 { 1093 return hasSVGRareData() && svgRareData()->instanceUpdatesBlocked(); 1094 } 1095 1096 void SVGElement::setInstanceUpdatesBlocked(bool value) 1097 { 1098 if (hasSVGRareData()) 1099 svgRareData()->setInstanceUpdatesBlocked(value); 1100 } 1101 1102 AffineTransform SVGElement::localCoordinateSpaceTransform(SVGLocatable::CTMScope) const 1103 { 1104 // To be overriden by SVGGraphicsElement (or as special case SVGTextElement and SVGPatternElement) 1105 return AffineTransform(); 1106 } 1107 1108 void SVGElement::updateRelativeLengthsInformation(bool hasRelativeLengths, SVGElement* element) 1109 { 1110 // If we're not yet in a document, this function will be called again from insertedInto(). Do nothing now. 1111 if (!inDocument()) 1112 return; 1113 1114 // An element wants to notify us that its own relative lengths state changed. 1115 // Register it in the relative length map, and register us in the parent relative length map. 1116 // Register the parent in the grandparents map, etc. Repeat procedure until the root of the SVG tree. 1117 1118 if (hasRelativeLengths) 1119 m_elementsWithRelativeLengths.add(element); 1120 else { 1121 if (!m_elementsWithRelativeLengths.contains(element)) { 1122 // We were never registered. Do nothing. 1123 return; 1124 } 1125 1126 m_elementsWithRelativeLengths.remove(element); 1127 } 1128 1129 // Find first styled parent node, and notify it that we've changed our relative length state. 1130 ContainerNode* node = parentNode(); 1131 while (node) { 1132 if (!node->isSVGElement()) 1133 break; 1134 1135 // Register us in the parent element map. 1136 toSVGElement(node)->updateRelativeLengthsInformation(hasRelativeLengths, this); 1137 break; 1138 } 1139 } 1140 1141 bool SVGElement::isMouseFocusable() const 1142 { 1143 if (!isFocusable()) 1144 return false; 1145 Element* eventTarget = const_cast<SVGElement*>(this); 1146 return eventTarget->hasEventListeners(eventNames().focusinEvent) || eventTarget->hasEventListeners(eventNames().focusoutEvent); 1147 } 1148 1149 bool SVGElement::isKeyboardFocusable(KeyboardEvent*) const 1150 { 1151 return isMouseFocusable(); 1152 } 1153 744 1154 } 745 1155 -
trunk/Source/WebCore/svg/SVGElement.h
r154443 r154462 1 1 /* 2 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org>3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> 4 4 * Copyright (C) 2009 Apple Inc. All rights reserved. 5 * Copyright (C) 2013 Samsung Electronics. All rights reserved. 5 6 * 6 7 * This library is free software; you can redistribute it and/or … … 24 25 25 26 #if ENABLE(SVG) 27 #include "CSSPropertyNames.h" 28 #include "SVGAnimatedString.h" 26 29 #include "SVGLangSpace.h" 27 30 #include "SVGLocatable.h" … … 31 34 #include "Timer.h" 32 35 #include <wtf/HashMap.h> 36 #include <wtf/HashSet.h> 37 #include <wtf/PassRefPtr.h> 33 38 34 39 namespace WebCore { … … 36 41 class AffineTransform; 37 42 class CSSCursorImageValue; 43 class CSSStyleDeclaration; 44 class CSSValue; 38 45 class Document; 39 46 class SVGAttributeToPropertyMap; … … 44 51 class SVGSVGElement; 45 52 53 void mapAttributeToCSSProperty(HashMap<AtomicStringImpl*, CSSPropertyID>* propertyNameToIdMap, const QualifiedName& attrName); 54 46 55 class SVGElement : public StyledElement, public SVGLangSpace { 47 56 public: … … 54 63 SVGElement* viewportElement() const; 55 64 65 virtual String title() const OVERRIDE; 66 static bool isAnimatableCSSProperty(const QualifiedName&); 67 bool isKnownAttribute(const QualifiedName&); 68 PassRefPtr<CSSValue> getPresentationAttribute(const String& name); 69 virtual bool supportsMarkers() const { return false; } 70 bool hasRelativeLengths() const { return !m_elementsWithRelativeLengths.isEmpty(); } 71 virtual bool needsPendingResourceHandling() const { return true; } 72 bool instanceUpdatesBlocked() const; 73 void setInstanceUpdatesBlocked(bool); 74 virtual AffineTransform localCoordinateSpaceTransform(SVGLocatable::CTMScope) const; 75 56 76 SVGDocumentExtensions* accessDocumentSVGExtensions(); 57 77 58 virtual bool isSVGStyledElement() const { return false; }59 78 virtual bool isSVGGraphicsElement() const { return false; } 60 79 virtual bool isSVGSVGElement() const { return false; } … … 66 85 virtual bool isValid() const { return true; } 67 86 68 virtual void svgAttributeChanged(const QualifiedName&) { }87 virtual void svgAttributeChanged(const QualifiedName&); 69 88 70 89 virtual void animatedPropertyTypeForAttribute(const QualifiedName&, Vector<AnimatedPropertyType>&); … … 103 122 virtual void synchronizeSystemLanguage() { } 104 123 105 virtual SVGAttributeToPropertyMap& localAttributeToPropertyMap();106 107 124 #ifndef NDEBUG 108 125 bool isAnimatableAttribute(const QualifiedName&) const; … … 126 143 virtual ~SVGElement(); 127 144 145 virtual bool rendererIsNeeded(const RenderStyle&); 128 146 virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE; 129 147 … … 138 156 139 157 void reportAttributeParsingError(SVGParsingError, const QualifiedName&, const AtomicString&); 158 static CSSPropertyID cssPropertyIdForSVGAttributeName(const QualifiedName&); 159 160 virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE; 161 virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE; 162 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE; 163 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0); 164 virtual bool selfHasRelativeLengths() const { return false; } 165 void updateRelativeLengthsInformation() { updateRelativeLengthsInformation(selfHasRelativeLengths(), this); } 166 void updateRelativeLengthsInformation(bool hasRelativeLengths, SVGElement*); 140 167 141 168 private: … … 150 177 virtual bool willRecalcStyle(Style::Change); 151 178 152 virtual bool rendererIsNeeded(const RenderStyle&) { return false; }153 154 179 virtual bool isSupported(StringImpl* feature, StringImpl* version) const; 155 180 156 181 void mapInstanceToElement(SVGElementInstance*); 157 182 void removeInstanceMapping(SVGElementInstance*); 183 184 void buildPendingResourcesIfNeeded(); 185 virtual bool isKeyboardFocusable(KeyboardEvent*) const OVERRIDE; 186 virtual bool isMouseFocusable() const OVERRIDE; 187 188 HashSet<SVGElement*> m_elementsWithRelativeLengths; 189 190 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGElement) 191 DECLARE_ANIMATED_STRING(ClassName, className) 192 END_DECLARE_ANIMATED_PROPERTIES 158 193 159 194 }; -
trunk/Source/WebCore/svg/SVGElement.idl
r154057 r154462 31 31 attribute DOMString xmllang; 32 32 attribute DOMString xmlspace; 33 34 readonly attribute SVGAnimatedString className; 35 readonly attribute CSSStyleDeclaration style; 36 37 CSSValue getPresentationAttribute([Default=Undefined] optional DOMString name); 33 38 }; 34 39 -
trunk/Source/WebCore/svg/SVGElementInstance.cpp
r154225 r154462 186 186 return; 187 187 188 if (element->i sSVGStyledElement() && toSVGStyledElement(element)->instanceUpdatesBlocked())188 if (element->instanceUpdatesBlocked()) 189 189 return; 190 190 … … 260 260 261 261 SVGElementInstance::InstanceUpdateBlocker::InstanceUpdateBlocker(SVGElement* targetElement) 262 : m_targetElement(targetElement ->isSVGStyledElement() ? toSVGStyledElement(targetElement) : 0)262 : m_targetElement(targetElement) 263 263 { 264 264 if (m_targetElement) -
trunk/Source/WebCore/svg/SVGElementInstance.h
r154165 r154462 36 36 class SVGElement; 37 37 class SVGElementInstanceList; 38 class SVG StyledElement;38 class SVGElement; 39 39 class SVGUseElement; 40 40 … … 92 92 93 93 private: 94 SVG StyledElement* m_targetElement;94 SVGElement* m_targetElement; 95 95 }; 96 96 -
trunk/Source/WebCore/svg/SVGFEBlendElement.idl
r152350 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFEBlendElement : SVG StyledElement {29 ] interface SVGFEBlendElement : SVGElement { 30 30 // Blend Mode Types 31 31 const unsigned short SVG_FEBLEND_MODE_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEColorMatrixElement.idl
r152350 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFEColorMatrixElement : SVG StyledElement {29 ] interface SVGFEColorMatrixElement : SVGElement { 30 30 // Color Matrix Types 31 31 const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEComponentTransferElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEComponentTransferElement : SVG StyledElement {28 ] interface SVGFEComponentTransferElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 }; -
trunk/Source/WebCore/svg/SVGFECompositeElement.idl
r152844 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFECompositeElement : SVG StyledElement {29 ] interface SVGFECompositeElement : SVGElement { 30 30 // Composite Operators 31 31 const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEConvolveMatrixElement.idl
r152350 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFEConvolveMatrixElement : SVG StyledElement {29 ] interface SVGFEConvolveMatrixElement : SVGElement { 30 30 // Edge Mode Values 31 31 const unsigned short SVG_EDGEMODE_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEDiffuseLightingElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEDiffuseLightingElement : SVG StyledElement {28 ] interface SVGFEDiffuseLightingElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 readonly attribute SVGAnimatedNumber surfaceScale; -
trunk/Source/WebCore/svg/SVGFEDisplacementMapElement.idl
r152350 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFEDisplacementMapElement : SVG StyledElement {29 ] interface SVGFEDisplacementMapElement : SVGElement { 30 30 // Channel Selectors 31 31 const unsigned short SVG_CHANNEL_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEDropShadowElement.idl
r152350 r154462 20 20 [ 21 21 Conditional=SVG&FILTERS 22 ] interface SVGFEDropShadowElement : SVG StyledElement {22 ] interface SVGFEDropShadowElement : SVGElement { 23 23 readonly attribute SVGAnimatedString in1; 24 24 readonly attribute SVGAnimatedNumber dx; -
trunk/Source/WebCore/svg/SVGFEFloodElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEFloodElement : SVG StyledElement {28 ] interface SVGFEFloodElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGFEGaussianBlurElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEGaussianBlurElement : SVG StyledElement {28 ] interface SVGFEGaussianBlurElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 readonly attribute SVGAnimatedNumber stdDeviationX; -
trunk/Source/WebCore/svg/SVGFEImageElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEImageElement : SVG StyledElement {28 ] interface SVGFEImageElement : SVGElement { 29 29 readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; 30 30 }; -
trunk/Source/WebCore/svg/SVGFELightElement.h
r135069 r154462 39 39 SVGFELightElement(const QualifiedName&, Document*); 40 40 41 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 42 41 43 private: 42 44 bool isSupportedAttribute(const QualifiedName&); -
trunk/Source/WebCore/svg/SVGFEMergeElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEMergeElement : SVG StyledElement {28 ] interface SVGFEMergeElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGFEMergeNodeElement.h
r149960 r154462 39 39 virtual void svgAttributeChanged(const QualifiedName&); 40 40 41 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 42 41 43 BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGFEMergeNodeElement) 42 44 DECLARE_ANIMATED_STRING(In1, in1) -
trunk/Source/WebCore/svg/SVGFEMorphologyElement.idl
r152844 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFEMorphologyElement : SVG StyledElement {29 ] interface SVGFEMorphologyElement : SVGElement { 30 30 // Morphology Operators 31 31 const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFEOffsetElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFEOffsetElement : SVG StyledElement {28 ] interface SVGFEOffsetElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 readonly attribute SVGAnimatedNumber dx; -
trunk/Source/WebCore/svg/SVGFESpecularLightingElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFESpecularLightingElement : SVG StyledElement {28 ] interface SVGFESpecularLightingElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 readonly attribute SVGAnimatedNumber surfaceScale; -
trunk/Source/WebCore/svg/SVGFETileElement.idl
r152350 r154462 26 26 [ 27 27 Conditional=SVG&FILTERS 28 ] interface SVGFETileElement : SVG StyledElement {28 ] interface SVGFETileElement : SVGElement { 29 29 readonly attribute SVGAnimatedString in1; 30 30 }; -
trunk/Source/WebCore/svg/SVGFETurbulenceElement.idl
r152350 r154462 27 27 Conditional=SVG&FILTERS, 28 28 DoNotCheckConstants 29 ] interface SVGFETurbulenceElement : SVG StyledElement {29 ] interface SVGFETurbulenceElement : SVGElement { 30 30 // Turbulence Types 31 31 const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGFilterElement.cpp
r154371 r154462 64 64 65 65 inline SVGFilterElement::SVGFilterElement(const QualifiedName& tagName, Document* document) 66 : SVG StyledElement(tagName, document)66 : SVGElement(tagName, document) 67 67 , m_filterUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) 68 68 , m_primitiveUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE) … … 127 127 128 128 if (!isSupportedAttribute(name)) 129 SVG StyledElement::parseAttribute(name, value);129 SVGElement::parseAttribute(name, value); 130 130 else if (name == SVGNames::filterUnitsAttr) { 131 131 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes::SVGUnitType>::fromString(value); … … 162 162 { 163 163 if (!isSupportedAttribute(attrName)) { 164 SVG StyledElement::svgAttributeChanged(attrName);164 SVGElement::svgAttributeChanged(attrName); 165 165 return; 166 166 } … … 180 180 void SVGFilterElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 181 181 { 182 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);182 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 183 183 184 184 if (changedByParser) -
trunk/Source/WebCore/svg/SVGFilterElement.h
r154371 r154462 29 29 #include "SVGAnimatedInteger.h" 30 30 #include "SVGAnimatedLength.h" 31 #include "SVGElement.h" 31 32 #include "SVGExternalResourcesRequired.h" 32 33 #include "SVGNames.h" 33 #include "SVGStyledElement.h"34 34 #include "SVGURIReference.h" 35 35 #include "SVGUnitTypes.h" … … 37 37 namespace WebCore { 38 38 39 class SVGFilterElement FINAL : public SVG StyledElement,39 class SVGFilterElement FINAL : public SVGElement, 40 40 public SVGURIReference, 41 41 public SVGExternalResourcesRequired { -
trunk/Source/WebCore/svg/SVGFilterElement.idl
r152156 r154462 27 27 [ 28 28 Conditional=SVG&FILTERS 29 ] interface SVGFilterElement : SVG StyledElement {29 ] interface SVGFilterElement : SVGElement { 30 30 readonly attribute SVGAnimatedEnumeration filterUnits; 31 31 readonly attribute SVGAnimatedEnumeration primitiveUnits; -
trunk/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp
r154358 r154462 28 28 #include "FilterEffect.h" 29 29 #include "RenderSVGResourceFilterPrimitive.h" 30 #include "SVGElement.h" 30 31 #include "SVGElementInstance.h" 31 32 #include "SVGFilterBuilder.h" 32 33 #include "SVGLength.h" 33 34 #include "SVGNames.h" 34 #include "SVGStyledElement.h"35 35 #include "SVGUnitTypes.h" 36 36 … … 50 50 REGISTER_LOCAL_ANIMATED_PROPERTY(height) 51 51 REGISTER_LOCAL_ANIMATED_PROPERTY(result) 52 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)52 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 53 53 END_REGISTER_ANIMATED_PROPERTIES 54 54 55 55 SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes(const QualifiedName& tagName, Document* document) 56 : SVG StyledElement(tagName, document)56 : SVGElement(tagName, document) 57 57 , m_x(LengthModeWidth, "0%") 58 58 , m_y(LengthModeHeight, "0%") … … 83 83 84 84 if (!isSupportedAttribute(name)) 85 SVG StyledElement::parseAttribute(name, value);85 SVGElement::parseAttribute(name, value); 86 86 else if (name == SVGNames::xAttr) 87 87 setXBaseValue(SVGLength::construct(LengthModeWidth, value, parseError)); … … 110 110 { 111 111 if (!isSupportedAttribute(attrName)) { 112 SVG StyledElement::svgAttributeChanged(attrName);112 SVGElement::svgAttributeChanged(attrName); 113 113 return; 114 114 } … … 120 120 void SVGFilterPrimitiveStandardAttributes::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 121 121 { 122 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);122 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 123 123 124 124 if (!changedByParser) … … 150 150 { 151 151 if (parentNode() && (parentNode()->hasTagName(SVGNames::filterTag))) 152 return SVG StyledElement::rendererIsNeeded(style);152 return SVGElement::rendererIsNeeded(style); 153 153 154 154 return false; -
trunk/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h
r154371 r154462 27 27 #include "SVGAnimatedLength.h" 28 28 #include "SVGAnimatedString.h" 29 #include "SVG StyledElement.h"29 #include "SVGElement.h" 30 30 31 31 #include <wtf/PassRefPtr.h> … … 38 38 class SVGFilterBuilder; 39 39 40 class SVGFilterPrimitiveStandardAttributes : public SVG StyledElement {40 class SVGFilterPrimitiveStandardAttributes : public SVGElement { 41 41 public: 42 42 void setStandardAttributes(FilterEffect*) const; -
trunk/Source/WebCore/svg/SVGFontElement.cpp
r117259 r154462 42 42 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGFontElement) 43 43 REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired) 44 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)44 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 45 45 END_REGISTER_ANIMATED_PROPERTIES 46 46 47 47 inline SVGFontElement::SVGFontElement(const QualifiedName& tagName, Document* document) 48 : SVG StyledElement(tagName, document)48 : SVGElement(tagName, document) 49 49 , m_missingGlyph(0) 50 50 , m_isGlyphCacheValid(false) -
trunk/Source/WebCore/svg/SVGFontElement.h
r154358 r154462 25 25 #if ENABLE(SVG_FONTS) 26 26 #include "SVGAnimatedBoolean.h" 27 #include "SVGElement.h" 27 28 #include "SVGExternalResourcesRequired.h" 28 29 #include "SVGGlyphMap.h" 29 30 #include "SVGNames.h" 30 31 #include "SVGParserUtilities.h" 31 #include "SVGStyledElement.h"32 32 33 33 namespace WebCore { … … 53 53 class SVGMissingGlyphElement; 54 54 55 class SVGFontElement FINAL : public SVG StyledElement55 class SVGFontElement FINAL : public SVGElement 56 56 , public SVGExternalResourcesRequired { 57 57 public: -
trunk/Source/WebCore/svg/SVGFontFaceElement.cpp
r153880 r154462 61 61 } 62 62 63 static CSSPropertyID cssPropertyIdForSVGAttributeName(const QualifiedName& attrName)64 {65 if (!attrName.namespaceURI().isNull())66 return CSSPropertyInvalid;67 68 static HashMap<AtomicStringImpl*, CSSPropertyID>* propertyNameToIdMap = 0;69 if (!propertyNameToIdMap) {70 propertyNameToIdMap = new HashMap<AtomicStringImpl*, CSSPropertyID>;71 // This is a list of all @font-face CSS properties which are exposed as SVG XML attributes72 // Those commented out are not yet supported by WebCore's style system73 // mapAttributeToCSSProperty(propertyNameToIdMap, accent_heightAttr);74 // mapAttributeToCSSProperty(propertyNameToIdMap, alphabeticAttr);75 // mapAttributeToCSSProperty(propertyNameToIdMap, ascentAttr);76 // mapAttributeToCSSProperty(propertyNameToIdMap, bboxAttr);77 // mapAttributeToCSSProperty(propertyNameToIdMap, cap_heightAttr);78 // mapAttributeToCSSProperty(propertyNameToIdMap, descentAttr);79 mapAttributeToCSSProperty(propertyNameToIdMap, font_familyAttr);80 mapAttributeToCSSProperty(propertyNameToIdMap, font_sizeAttr);81 mapAttributeToCSSProperty(propertyNameToIdMap, font_stretchAttr);82 mapAttributeToCSSProperty(propertyNameToIdMap, font_styleAttr);83 mapAttributeToCSSProperty(propertyNameToIdMap, font_variantAttr);84 mapAttributeToCSSProperty(propertyNameToIdMap, font_weightAttr);85 // mapAttributeToCSSProperty(propertyNameToIdMap, hangingAttr);86 // mapAttributeToCSSProperty(propertyNameToIdMap, ideographicAttr);87 // mapAttributeToCSSProperty(propertyNameToIdMap, mathematicalAttr);88 // mapAttributeToCSSProperty(propertyNameToIdMap, overline_positionAttr);89 // mapAttributeToCSSProperty(propertyNameToIdMap, overline_thicknessAttr);90 // mapAttributeToCSSProperty(propertyNameToIdMap, panose_1Attr);91 // mapAttributeToCSSProperty(propertyNameToIdMap, slopeAttr);92 // mapAttributeToCSSProperty(propertyNameToIdMap, stemhAttr);93 // mapAttributeToCSSProperty(propertyNameToIdMap, stemvAttr);94 // mapAttributeToCSSProperty(propertyNameToIdMap, strikethrough_positionAttr);95 // mapAttributeToCSSProperty(propertyNameToIdMap, strikethrough_thicknessAttr);96 // mapAttributeToCSSProperty(propertyNameToIdMap, underline_positionAttr);97 // mapAttributeToCSSProperty(propertyNameToIdMap, underline_thicknessAttr);98 // mapAttributeToCSSProperty(propertyNameToIdMap, unicode_rangeAttr);99 // mapAttributeToCSSProperty(propertyNameToIdMap, units_per_emAttr);100 // mapAttributeToCSSProperty(propertyNameToIdMap, v_alphabeticAttr);101 // mapAttributeToCSSProperty(propertyNameToIdMap, v_hangingAttr);102 // mapAttributeToCSSProperty(propertyNameToIdMap, v_ideographicAttr);103 // mapAttributeToCSSProperty(propertyNameToIdMap, v_mathematicalAttr);104 // mapAttributeToCSSProperty(propertyNameToIdMap, widthsAttr);105 // mapAttributeToCSSProperty(propertyNameToIdMap, x_heightAttr);106 }107 108 return propertyNameToIdMap->get(attrName.localName().impl());109 }110 111 63 void SVGFontFaceElement::parseAttribute(const QualifiedName& name, const AtomicString& value) 112 64 { -
trunk/Source/WebCore/svg/SVGFontFaceElement.h
r153561 r154462 62 62 virtual void removedFrom(ContainerNode*) OVERRIDE; 63 63 64 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 65 64 66 RefPtr<StyleRuleFontFace> m_fontFaceRule; 65 67 SVGFontElement* m_fontElement; -
trunk/Source/WebCore/svg/SVGFontFaceFormatElement.h
r149960 r154462 34 34 35 35 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0); 36 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 36 37 }; 37 38 -
trunk/Source/WebCore/svg/SVGFontFaceNameElement.h
r149960 r154462 36 36 private: 37 37 SVGFontFaceNameElement(const QualifiedName&, Document*); 38 39 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 38 40 }; 39 41 -
trunk/Source/WebCore/svg/SVGFontFaceSrcElement.h
r149960 r154462 38 38 39 39 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0); 40 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 40 41 }; 41 42 -
trunk/Source/WebCore/svg/SVGFontFaceUriElement.h
r149960 r154462 44 44 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0); 45 45 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE; 46 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 46 47 47 48 void loadFont(); -
trunk/Source/WebCore/svg/SVGGElement.cpp
r154414 r154462 104 104 bool SVGGElement::rendererIsNeeded(const RenderStyle&) 105 105 { 106 // Unlike SVG StyledElement::rendererIsNeeded(), we still create renderers, even if106 // Unlike SVGElement::rendererIsNeeded(), we still create renderers, even if 107 107 // display is set to 'none' - which is special to SVG <g> container elements. 108 108 return parentOrShadowHostElement() && parentOrShadowHostElement()->isSVGElement(); -
trunk/Source/WebCore/svg/SVGGlyphElement.cpp
r152524 r154462 35 35 36 36 inline SVGGlyphElement::SVGGlyphElement(const QualifiedName& tagName, Document* document) 37 : SVG StyledElement(tagName, document)37 : SVGElement(tagName, document) 38 38 { 39 39 ASSERT(hasTagName(SVGNames::glyphTag)); … … 57 57 invalidateGlyphCache(); 58 58 else 59 SVG StyledElement::parseAttribute(name, value);59 SVGElement::parseAttribute(name, value); 60 60 } 61 61 … … 63 63 { 64 64 invalidateGlyphCache(); 65 return SVG StyledElement::insertedInto(rootParent);65 return SVGElement::insertedInto(rootParent); 66 66 } 67 67 … … 70 70 if (rootParent->inDocument()) 71 71 invalidateGlyphCache(); 72 SVG StyledElement::removedFrom(rootParent);72 SVGElement::removedFrom(rootParent); 73 73 } 74 74 -
trunk/Source/WebCore/svg/SVGGlyphElement.h
r154358 r154462 24 24 25 25 #if ENABLE(SVG_FONTS) 26 #include "SVGElement.h" 26 27 #include "SVGGlyph.h" 27 #include "SVGStyledElement.h"28 28 29 29 namespace WebCore { … … 31 31 class SVGFontData; 32 32 33 class SVGGlyphElement FINAL : public SVG StyledElement {33 class SVGGlyphElement FINAL : public SVGElement { 34 34 public: 35 35 static PassRefPtr<SVGGlyphElement> create(const QualifiedName&, Document*); -
trunk/Source/WebCore/svg/SVGGlyphRefElement.cpp
r135069 r154462 36 36 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGGlyphRefElement) 37 37 REGISTER_LOCAL_ANIMATED_PROPERTY(href) 38 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)38 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 39 39 END_REGISTER_ANIMATED_PROPERTIES 40 40 41 41 inline SVGGlyphRefElement::SVGGlyphRefElement(const QualifiedName& tagName, Document* document) 42 : SVG StyledElement(tagName, document)42 : SVGElement(tagName, document) 43 43 , m_x(0) 44 44 , m_y(0) … … 82 82 if (SVGURIReference::parseAttribute(name, value)) 83 83 return; 84 SVG StyledElement::parseAttribute(name, value);84 SVGElement::parseAttribute(name, value); 85 85 } 86 86 } -
trunk/Source/WebCore/svg/SVGGlyphRefElement.h
r154358 r154462 22 22 23 23 #if ENABLE(SVG) && ENABLE(SVG_FONTS) 24 #include "SVG StyledElement.h"24 #include "SVGElement.h" 25 25 #include "SVGURIReference.h" 26 26 27 27 namespace WebCore { 28 28 29 class SVGGlyphRefElement FINAL : public SVG StyledElement,29 class SVGGlyphRefElement FINAL : public SVGElement, 30 30 public SVGURIReference { 31 31 public: -
trunk/Source/WebCore/svg/SVGGlyphRefElement.idl
r152120 r154462 20 20 [ 21 21 Conditional=SVG&SVG_FONTS 22 ] interface SVGGlyphRefElement : SVG StyledElement {22 ] interface SVGGlyphRefElement : SVGElement { 23 23 // FIXME: Use [Reflect] after https://bugs.webkit.org/show_bug.cgi?id=64843 is fixed. 24 24 [SetterRaisesException] attribute DOMString glyphRef; -
trunk/Source/WebCore/svg/SVGGradientElement.cpp
r152553 r154462 53 53 REGISTER_LOCAL_ANIMATED_PROPERTY(href) 54 54 REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired) 55 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)55 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 56 56 END_REGISTER_ANIMATED_PROPERTIES 57 57 58 58 SVGGradientElement::SVGGradientElement(const QualifiedName& tagName, Document* document) 59 : SVG StyledElement(tagName, document)59 : SVGElement(tagName, document) 60 60 , m_spreadMethod(SVGSpreadMethodPad) 61 61 , m_gradientUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) … … 80 80 { 81 81 if (!isSupportedAttribute(name)) { 82 SVG StyledElement::parseAttribute(name, value);82 SVGElement::parseAttribute(name, value); 83 83 return; 84 84 } … … 117 117 { 118 118 if (!isSupportedAttribute(attrName)) { 119 SVG StyledElement::svgAttributeChanged(attrName);119 SVGElement::svgAttributeChanged(attrName); 120 120 return; 121 121 } … … 129 129 void SVGGradientElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 130 130 { 131 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);131 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 132 132 133 133 if (changedByParser) -
trunk/Source/WebCore/svg/SVGGradientElement.h
r152955 r154462 27 27 #include "SVGAnimatedEnumeration.h" 28 28 #include "SVGAnimatedTransformList.h" 29 #include "SVGElement.h" 29 30 #include "SVGExternalResourcesRequired.h" 30 31 #include "SVGNames.h" 31 #include "SVGStyledElement.h"32 32 #include "SVGURIReference.h" 33 33 #include "SVGUnitTypes.h" … … 75 75 }; 76 76 77 class SVGGradientElement : public SVG StyledElement,77 class SVGGradientElement : public SVGElement, 78 78 public SVGURIReference, 79 79 public SVGExternalResourcesRequired { -
trunk/Source/WebCore/svg/SVGGradientElement.idl
r152120 r154462 27 27 Conditional=SVG, 28 28 DoNotCheckConstants 29 ] interface SVGGradientElement : SVG StyledElement {29 ] interface SVGGradientElement : SVGElement { 30 30 // Spread Method Types 31 31 const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGGraphicsElement.cpp
r154414 r154462 39 39 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGGraphicsElement) 40 40 REGISTER_LOCAL_ANIMATED_PROPERTY(transform) 41 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)41 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 42 42 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests) 43 43 END_REGISTER_ANIMATED_PROPERTIES 44 44 45 45 SVGGraphicsElement::SVGGraphicsElement(const QualifiedName& tagName, Document* document) 46 : SVG StyledElement(tagName, document)46 : SVGElement(tagName, document) 47 47 { 48 48 registerAnimatedPropertiesForSVGGraphicsElement(); … … 105 105 { 106 106 if (!isSupportedAttribute(name)) { 107 SVG StyledElement::parseAttribute(name, value);107 SVGElement::parseAttribute(name, value); 108 108 return; 109 109 } … … 126 126 { 127 127 if (!isSupportedAttribute(attrName)) { 128 SVG StyledElement::svgAttributeChanged(attrName);128 SVGElement::svgAttributeChanged(attrName); 129 129 return; 130 130 } -
trunk/Source/WebCore/svg/SVGGraphicsElement.h
r154414 r154462 24 24 #if ENABLE(SVG) 25 25 #include "SVGAnimatedTransformList.h" 26 #include "SVG StyledElement.h"26 #include "SVGElement.h" 27 27 #include "SVGTests.h" 28 28 #include "SVGTransformable.h" … … 33 33 class Path; 34 34 35 class SVGGraphicsElement : public SVG StyledElement, public SVGTransformable, public SVGTests {35 class SVGGraphicsElement : public SVGElement, public SVGTransformable, public SVGTests { 36 36 public: 37 37 virtual ~SVGGraphicsElement(); -
trunk/Source/WebCore/svg/SVGGraphicsElement.idl
r152210 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGGraphicsElement : SVG StyledElement {28 ] interface SVGGraphicsElement : SVGElement { 29 29 readonly attribute SVGAnimatedTransformList transform; 30 30 -
trunk/Source/WebCore/svg/SVGLocatable.cpp
r152524 r154462 90 90 break; 91 91 92 if (toSVGElement(currentElement)->isSVGStyledElement()) 93 ctm = toSVGStyledElement(currentElement)->localCoordinateSpaceTransform(mode).multiply(ctm); 92 ctm = toSVGElement(currentElement)->localCoordinateSpaceTransform(mode).multiply(ctm); 94 93 95 94 // For getCTM() computation, stop at the nearest viewport element -
trunk/Source/WebCore/svg/SVGMPathElement.h
r153820 r154462 57 57 virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE; 58 58 59 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 60 59 61 void notifyParentOfPathChange(ContainerNode*); 60 62 -
trunk/Source/WebCore/svg/SVGMarkerElement.cpp
r151800 r154462 71 71 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox) 72 72 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 73 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)73 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 74 74 END_REGISTER_ANIMATED_PROPERTIES 75 75 76 76 inline SVGMarkerElement::SVGMarkerElement(const QualifiedName& tagName, Document* document) 77 : SVG StyledElement(tagName, document)77 : SVGElement(tagName, document) 78 78 , m_refX(LengthModeWidth) 79 79 , m_refY(LengthModeHeight) … … 132 132 133 133 if (!isSupportedAttribute(name)) 134 SVG StyledElement::parseAttribute(name, value);134 SVGElement::parseAttribute(name, value); 135 135 else if (name == SVGNames::markerUnitsAttr) { 136 136 SVGMarkerUnitsType propertyValue = SVGPropertyTraits<SVGMarkerUnitsType>::fromString(value); … … 164 164 { 165 165 if (!isSupportedAttribute(attrName)) { 166 SVG StyledElement::svgAttributeChanged(attrName);166 SVGElement::svgAttributeChanged(attrName); 167 167 return; 168 168 } … … 182 182 void SVGMarkerElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 183 183 { 184 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);184 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 185 185 186 186 if (changedByParser) -
trunk/Source/WebCore/svg/SVGMarkerElement.h
r154358 r154462 29 29 #include "SVGAnimatedPreserveAspectRatio.h" 30 30 #include "SVGAnimatedRect.h" 31 #include "SVGElement.h" 31 32 #include "SVGExternalResourcesRequired.h" 32 33 #include "SVGFitToViewBox.h" 33 #include "SVGStyledElement.h"34 34 35 35 namespace WebCore { … … 95 95 }; 96 96 97 class SVGMarkerElement FINAL : public SVG StyledElement,97 class SVGMarkerElement FINAL : public SVGElement, 98 98 public SVGExternalResourcesRequired, 99 99 public SVGFitToViewBox { -
trunk/Source/WebCore/svg/SVGMarkerElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGMarkerElement : SVG StyledElement {28 ] interface SVGMarkerElement : SVGElement { 29 29 // Marker Unit Types 30 30 const unsigned short SVG_MARKERUNITS_UNKNOWN = 0; -
trunk/Source/WebCore/svg/SVGMaskElement.cpp
r151800 r154462 54 54 REGISTER_LOCAL_ANIMATED_PROPERTY(height) 55 55 REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired) 56 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)56 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 57 57 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests) 58 58 END_REGISTER_ANIMATED_PROPERTIES 59 59 60 60 inline SVGMaskElement::SVGMaskElement(const QualifiedName& tagName, Document* document) 61 : SVG StyledElement(tagName, document)61 : SVGElement(tagName, document) 62 62 , m_maskUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) 63 63 , m_maskContentUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE) … … 100 100 101 101 if (!isSupportedAttribute(name)) 102 SVG StyledElement::parseAttribute(name, value);102 SVGElement::parseAttribute(name, value); 103 103 else if (name == SVGNames::maskUnitsAttr) { 104 104 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes::SVGUnitType>::fromString(value); … … 131 131 { 132 132 if (!isSupportedAttribute(attrName)) { 133 SVG StyledElement::svgAttributeChanged(attrName);133 SVGElement::svgAttributeChanged(attrName); 134 134 return; 135 135 } … … 149 149 void SVGMaskElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 150 150 { 151 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);151 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 152 152 153 153 if (changedByParser) -
trunk/Source/WebCore/svg/SVGMaskElement.h
r153687 r154462 25 25 #include "SVGAnimatedEnumeration.h" 26 26 #include "SVGAnimatedLength.h" 27 #include "SVGElement.h" 27 28 #include "SVGExternalResourcesRequired.h" 28 29 #include "SVGNames.h" 29 #include "SVGStyledElement.h"30 30 #include "SVGTests.h" 31 31 #include "SVGUnitTypes.h" … … 33 33 namespace WebCore { 34 34 35 class SVGMaskElement FINAL : public SVG StyledElement,35 class SVGMaskElement FINAL : public SVGElement, 36 36 public SVGTests, 37 37 public SVGExternalResourcesRequired { -
trunk/Source/WebCore/svg/SVGMaskElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGMaskElement : SVG StyledElement {28 ] interface SVGMaskElement : SVGElement { 29 29 readonly attribute SVGAnimatedEnumeration maskUnits; 30 30 readonly attribute SVGAnimatedEnumeration maskContentUnits; -
trunk/Source/WebCore/svg/SVGMetadataElement.h
r149960 r154462 33 33 private: 34 34 SVGMetadataElement(const QualifiedName&, Document*); 35 36 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 35 37 }; 36 38 -
trunk/Source/WebCore/svg/SVGMissingGlyphElement.cpp
r90680 r154462 27 27 28 28 inline SVGMissingGlyphElement::SVGMissingGlyphElement(const QualifiedName& tagName, Document* document) 29 : SVG StyledElement(tagName, document)29 : SVGElement(tagName, document) 30 30 { 31 31 ASSERT(hasTagName(SVGNames::missing_glyphTag)); -
trunk/Source/WebCore/svg/SVGMissingGlyphElement.h
r154358 r154462 22 22 23 23 #if ENABLE(SVG_FONTS) 24 #include "SVG StyledElement.h"24 #include "SVGElement.h" 25 25 26 26 namespace WebCore { 27 27 28 class SVGMissingGlyphElement FINAL : public SVG StyledElement {28 class SVGMissingGlyphElement FINAL : public SVGElement { 29 29 public: 30 30 static PassRefPtr<SVGMissingGlyphElement> create(const QualifiedName&, Document*); -
trunk/Source/WebCore/svg/SVGMissingGlyphElement.idl
r140265 r154462 26 26 [ 27 27 Conditional=SVG&SVG_FONTS 28 ] interface SVGMissingGlyphElement : SVG StyledElement {28 ] interface SVGMissingGlyphElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGPatternElement.cpp
r152553 r154462 70 70 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox) 71 71 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 72 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)72 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 73 73 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests) 74 74 END_REGISTER_ANIMATED_PROPERTIES 75 75 76 76 inline SVGPatternElement::SVGPatternElement(const QualifiedName& tagName, Document* document) 77 : SVG StyledElement(tagName, document)77 : SVGElement(tagName, document) 78 78 , m_x(LengthModeWidth) 79 79 , m_y(LengthModeHeight) … … 117 117 118 118 if (!isSupportedAttribute(name)) 119 SVG StyledElement::parseAttribute(name, value);119 SVGElement::parseAttribute(name, value); 120 120 else if (name == SVGNames::patternUnitsAttr) { 121 121 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes::SVGUnitType>::fromString(value); … … 156 156 { 157 157 if (!isSupportedAttribute(attrName)) { 158 SVG StyledElement::svgAttributeChanged(attrName);158 SVGElement::svgAttributeChanged(attrName); 159 159 return; 160 160 } … … 174 174 void SVGPatternElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 175 175 { 176 SVG StyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);176 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta); 177 177 178 178 if (changedByParser) -
trunk/Source/WebCore/svg/SVGPatternElement.h
r153297 r154462 29 29 #include "SVGAnimatedRect.h" 30 30 #include "SVGAnimatedTransformList.h" 31 #include "SVGElement.h" 31 32 #include "SVGExternalResourcesRequired.h" 32 33 #include "SVGFitToViewBox.h" 33 34 #include "SVGNames.h" 34 #include "SVGStyledElement.h"35 35 #include "SVGTests.h" 36 36 #include "SVGURIReference.h" … … 41 41 struct PatternAttributes; 42 42 43 class SVGPatternElement FINAL : public SVG StyledElement,43 class SVGPatternElement FINAL : public SVGElement, 44 44 public SVGURIReference, 45 45 public SVGTests, -
trunk/Source/WebCore/svg/SVGPatternElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGPatternElement : SVG StyledElement {28 ] interface SVGPatternElement : SVGElement { 29 29 readonly attribute SVGAnimatedEnumeration patternUnits; 30 30 readonly attribute SVGAnimatedEnumeration patternContentUnits; -
trunk/Source/WebCore/svg/SVGScriptElement.h
r151951 r154462 72 72 73 73 virtual PassRefPtr<Element> cloneElementWithoutAttributesAndChildren(); 74 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 74 75 75 76 // SVGExternalResourcesRequired -
trunk/Source/WebCore/svg/SVGStopElement.cpp
r154358 r154462 39 39 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGStopElement) 40 40 REGISTER_LOCAL_ANIMATED_PROPERTY(offset) 41 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)41 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 42 42 END_REGISTER_ANIMATED_PROPERTIES 43 43 44 44 inline SVGStopElement::SVGStopElement(const QualifiedName& tagName, Document* document) 45 : SVG StyledElement(tagName, document)45 : SVGElement(tagName, document) 46 46 , m_offset(0) 47 47 { … … 66 66 { 67 67 if (!isSupportedAttribute(name)) { 68 SVG StyledElement::parseAttribute(name, value);68 SVGElement::parseAttribute(name, value); 69 69 return; 70 70 } … … 84 84 { 85 85 if (!isSupportedAttribute(attrName)) { 86 SVG StyledElement::svgAttributeChanged(attrName);86 SVGElement::svgAttributeChanged(attrName); 87 87 return; 88 88 } -
trunk/Source/WebCore/svg/SVGStopElement.h
r154358 r154462 24 24 #if ENABLE(SVG) 25 25 #include "SVGAnimatedNumber.h" 26 #include "SVG StyledElement.h"26 #include "SVGElement.h" 27 27 28 28 namespace WebCore { 29 29 30 class SVGStopElement FINAL : public SVG StyledElement {30 class SVGStopElement FINAL : public SVGElement { 31 31 public: 32 32 static PassRefPtr<SVGStopElement> create(const QualifiedName&, Document*); -
trunk/Source/WebCore/svg/SVGStopElement.idl
r140265 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGStopElement : SVG StyledElement {28 ] interface SVGStopElement : SVGElement { 29 29 readonly attribute SVGAnimatedNumber offset; 30 30 }; -
trunk/Source/WebCore/svg/SVGStyleElement.h
r154271 r154462 57 57 virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0); 58 58 59 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 60 59 61 virtual void finishParsingChildren(); 60 62 -
trunk/Source/WebCore/svg/SVGSymbolElement.cpp
r151800 r154462 40 40 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox) 41 41 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 42 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)42 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 43 43 END_REGISTER_ANIMATED_PROPERTIES 44 44 45 45 inline SVGSymbolElement::SVGSymbolElement(const QualifiedName& tagName, Document* document) 46 : SVG StyledElement(tagName, document)46 : SVGElement(tagName, document) 47 47 { 48 48 ASSERT(hasTagName(SVGNames::symbolTag)); … … 69 69 { 70 70 if (!isSupportedAttribute(name)) { 71 SVG StyledElement::parseAttribute(name, value);71 SVGElement::parseAttribute(name, value); 72 72 return; 73 73 } … … 86 86 { 87 87 if (!isSupportedAttribute(attrName)) { 88 SVG StyledElement::svgAttributeChanged(attrName);88 SVGElement::svgAttributeChanged(attrName); 89 89 return; 90 90 } -
trunk/Source/WebCore/svg/SVGSymbolElement.h
r152156 r154462 26 26 #include "SVGAnimatedPreserveAspectRatio.h" 27 27 #include "SVGAnimatedRect.h" 28 #include "SVGElement.h" 28 29 #include "SVGExternalResourcesRequired.h" 29 30 #include "SVGFitToViewBox.h" 30 #include "SVGStyledElement.h"31 31 32 32 namespace WebCore { 33 33 34 class SVGSymbolElement FINAL : public SVG StyledElement,34 class SVGSymbolElement FINAL : public SVGElement, 35 35 public SVGExternalResourcesRequired, 36 36 public SVGFitToViewBox { -
trunk/Source/WebCore/svg/SVGSymbolElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGSymbolElement : SVG StyledElement {28 ] interface SVGSymbolElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGTRefElement.cpp
r154371 r154462 278 278 Node::InsertionNotificationRequest SVGTRefElement::insertedInto(ContainerNode* rootParent) 279 279 { 280 SVG StyledElement::insertedInto(rootParent);280 SVGElement::insertedInto(rootParent); 281 281 if (rootParent->inDocument()) 282 282 buildPendingResource(); … … 286 286 void SVGTRefElement::removedFrom(ContainerNode* rootParent) 287 287 { 288 SVG StyledElement::removedFrom(rootParent);288 SVGElement::removedFrom(rootParent); 289 289 if (rootParent->inDocument()) 290 290 m_targetListener->detach(); -
trunk/Source/WebCore/svg/SVGTitleElement.cpp
r118192 r154462 29 29 30 30 inline SVGTitleElement::SVGTitleElement(const QualifiedName& tagName, Document* document) 31 : SVG StyledElement(tagName, document)31 : SVGElement(tagName, document) 32 32 { 33 33 ASSERT(hasTagName(SVGNames::titleTag)); … … 41 41 Node::InsertionNotificationRequest SVGTitleElement::insertedInto(ContainerNode* rootParent) 42 42 { 43 SVG StyledElement::insertedInto(rootParent);43 SVGElement::insertedInto(rootParent); 44 44 if (!rootParent->inDocument()) 45 45 return InsertionDone; -
trunk/Source/WebCore/svg/SVGTitleElement.h
r154358 r154462 23 23 #if ENABLE(SVG) 24 24 25 #include "SVG StyledElement.h"25 #include "SVGElement.h" 26 26 27 27 namespace WebCore { 28 28 29 class SVGTitleElement FINAL : public SVG StyledElement {29 class SVGTitleElement FINAL : public SVGElement { 30 30 public: 31 31 static PassRefPtr<SVGTitleElement> create(const QualifiedName&, Document*); -
trunk/Source/WebCore/svg/SVGTitleElement.idl
r152156 r154462 26 26 [ 27 27 Conditional=SVG 28 ] interface SVGTitleElement : SVG StyledElement {28 ] interface SVGTitleElement : SVGElement { 29 29 }; 30 30 -
trunk/Source/WebCore/svg/SVGTransformable.cpp
r110838 r154462 27 27 #include "AffineTransform.h" 28 28 #include "FloatConversion.h" 29 #include "SVGElement.h" 29 30 #include "SVGNames.h" 30 31 #include "SVGParserUtilities.h" 31 #include "SVGStyledElement.h"32 32 #include "SVGTransformList.h" 33 33 -
trunk/Source/WebCore/svg/SVGUseElement.cpp
r154254 r154462 941 941 942 942 SVGElement* element = m_targetElementInstance->correspondingElement(); 943 if (!element || !element->isSVGStyledElement())943 if (!element) 944 944 return false; 945 945 946 return toSVGStyledElement(element)->hasRelativeLengths();946 return element->hasRelativeLengths(); 947 947 } 948 948 -
trunk/Source/WebCore/svg/SVGViewElement.cpp
r151800 r154462 41 41 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox) 42 42 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 43 REGISTER_PARENT_ANIMATED_PROPERTIES(SVG StyledElement)43 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement) 44 44 END_REGISTER_ANIMATED_PROPERTIES 45 45 46 46 inline SVGViewElement::SVGViewElement(const QualifiedName& tagName, Document* document) 47 : SVG StyledElement(tagName, document)47 : SVGElement(tagName, document) 48 48 , m_zoomAndPan(SVGZoomAndPanMagnify) 49 49 , m_viewTarget(SVGNames::viewTargetAttr) … … 73 73 { 74 74 if (!isSupportedAttribute(name)) { 75 SVG StyledElement::parseAttribute(name, value);75 SVGElement::parseAttribute(name, value); 76 76 return; 77 77 } -
trunk/Source/WebCore/svg/SVGViewElement.h
r154358 r154462 26 26 #include "SVGAnimatedPreserveAspectRatio.h" 27 27 #include "SVGAnimatedRect.h" 28 #include "SVGElement.h" 28 29 #include "SVGExternalResourcesRequired.h" 29 30 #include "SVGFitToViewBox.h" 30 31 #include "SVGStringList.h" 31 #include "SVGStyledElement.h"32 32 #include "SVGZoomAndPan.h" 33 33 34 34 namespace WebCore { 35 35 36 class SVGViewElement FINAL : public SVG StyledElement,36 class SVGViewElement FINAL : public SVGElement, 37 37 public SVGExternalResourcesRequired, 38 38 public SVGFitToViewBox, … … 41 41 static PassRefPtr<SVGViewElement> create(const QualifiedName&, Document*); 42 42 43 using SVG StyledElement::ref;44 using SVG StyledElement::deref;43 using SVGElement::ref; 44 using SVGElement::deref; 45 45 46 46 SVGStringList& viewTarget() { return m_viewTarget; } -
trunk/Source/WebCore/svg/animation/SVGSMILElement.h
r153559 r154462 117 117 void setInactive() { m_activeState = Inactive; } 118 118 119 virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE { return false; } 120 119 121 // Sub-classes may need to take action when the target is changed. 120 122 virtual void setTargetElement(SVGElement*); -
trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp
r145433 r154462 31 31 #include "RenderObject.h" 32 32 #include "RenderTreeAsText.h" 33 #include "SVGElement.h" 33 34 #include "SVGFilter.h" 34 35 #include "SVGPreserveAspectRatio.h" 35 36 #include "SVGRenderingContext.h" 36 #include "SVGStyledElement.h"37 37 #include "SVGURIReference.h" 38 38 #include "TextStream.h" … … 127 127 128 128 SVGElement* contextNode = toSVGElement(renderer->node()); 129 if (contextNode-> isSVGStyledElement() && toSVGStyledElement(contextNode)->hasRelativeLengths()) {129 if (contextNode->hasRelativeLengths()) { 130 130 SVGLengthContext lengthContext(contextNode); 131 131 float width = 0;
Note: See TracChangeset
for help on using the changeset viewer.