2007-02-02 Eric Seidel <eric@webkit.org>
authoreseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Feb 2007 16:28:09 +0000 (16:28 +0000)
committereseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Feb 2007 16:28:09 +0000 (16:28 +0000)
commite37c2320bba4778657c59a8a750ae3d342f924d4
tree84eff38fcf16d717427ccc7fa735bfa71beb17fa
parent6a1ebd04238716e4bcfabebd4e1270d24dfe82a3
2007-02-02  Eric Seidel  <eric@webkit.org>

        Reviewed by mitz.

        Fix gradient stop style resolution to be less of a hack, fixing style invalidation:
        http://bugs.webkit.org/show_bug.cgi?id=12193
        and fix stop-color and stop-opacity not to inherit:
        http://bugs.webkit.org/show_bug.cgi?id=12193

        Tests:
        * svg/custom/gradient-stops-style-change.svg: added
        * svg/W3C-SVG-1.1/pservers-grad-18-b.svg: updated

        * WebCore.xcodeproj/project.pbxproj:
        * ksvg2/css/SVGCSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applySVGProperty):
        * ksvg2/css/SVGRenderStyle.cpp:
        (WebCore::SVGRenderStyle::inheritedNotEqual):
        (WebCore::SVGRenderStyle::inheritFrom):
        * ksvg2/css/SVGRenderStyle.h:
        * ksvg2/svg/SVGDefsElement.cpp:
        (WebCore::SVGDefsElement::createRenderer):
        * ksvg2/svg/SVGGradientElement.cpp:
        (WebCore::SVGGradientElement::createRenderer):
        (WebCore::SVGGradientElement::buildStops):
        * ksvg2/svg/SVGGradientElement.h:
        (WebCore::SVGGradientElement::rendererIsNeeded):
        * ksvg2/svg/SVGStopElement.cpp:
        (WebCore::SVGStopElement::createRenderer):
        * ksvg2/svg/SVGStopElement.h:
        (WebCore::SVGStopElement::rendererIsNeeded):
        * rendering/RenderSVGGradientStop.cpp: Added.
        * rendering/RenderSVGGradientStop.h: Added.
        * rendering/RenderSVGHiddenContainer.cpp: Added.
        * rendering/RenderSVGHiddenContainer.h: Added.
        * rendering/RenderSVGContainer.cpp:
        * rendering/RenderSVGContainer.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19362 268f45cc-cd09-0410-ab3c-d52691b4dbfc
198 files changed:
LayoutTests/ChangeLog
LayoutTests/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-30-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-39-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-41-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-46-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-61-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-63-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-64-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-65-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-66-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-67-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-68-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-69-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-70-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-77-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-78-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-81-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-82-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/animate-elem-83-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/color-prof-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/color-prop-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/coords-units-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/extend-namespace-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-felem-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-light-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-offset-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-specular-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-tile-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/filters-turb-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-glyph-04-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/interact-events-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/interact-order-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/interact-order-02-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/interact-order-03-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/masking-path-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/painting-marker-02-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/painting-marker-03-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/painting-render-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-02-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-04-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-09-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-10-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-12-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-14-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-15-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-16-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-defs-01-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-group-03-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-image-02-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-use-01-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-use-03-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/styling-css-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/styling-css-02-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/styling-css-03-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt
LayoutTests/svg/W3C-SVG-1.1/styling-inherit-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-align-04-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-path-01-b-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-text-04-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-text-05-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-text-06-t-expected.txt
LayoutTests/svg/W3C-SVG-1.1/text-tselect-02-f-expected.txt
LayoutTests/svg/carto.net/button-expected.txt
LayoutTests/svg/carto.net/colourpicker-expected.txt
LayoutTests/svg/carto.net/slider-expected.txt
LayoutTests/svg/carto.net/window-expected.txt
LayoutTests/svg/custom/clip-path-child-changes-expected.txt
LayoutTests/svg/custom/clip-path-href-changes-expected.txt
LayoutTests/svg/custom/clip-path-units-changes-expected.txt
LayoutTests/svg/custom/clip-path-with-transform-expected.txt
LayoutTests/svg/custom/deep-dynamic-updates-expected.txt
LayoutTests/svg/custom/empty-merge-expected.txt
LayoutTests/svg/custom/feComponentTransfer-Discrete-expected.txt
LayoutTests/svg/custom/feComponentTransfer-Gamma-expected.txt
LayoutTests/svg/custom/feComponentTransfer-Linear-expected.txt
LayoutTests/svg/custom/feComponentTransfer-Table-expected.txt
LayoutTests/svg/custom/feDisplacementMap-01-expected.txt
LayoutTests/svg/custom/filter-source-alpha-expected.txt
LayoutTests/svg/custom/gradient-add-stops-expected.txt
LayoutTests/svg/custom/gradient-attr-update-expected.txt
LayoutTests/svg/custom/gradient-cycle-detection-expected.txt
LayoutTests/svg/custom/gradient-deep-referencing-expected.txt
LayoutTests/svg/custom/gradient-stop-corner-cases-expected.txt
LayoutTests/svg/custom/gradient-stop-style-change-expected.checksum [new file with mode: 0644]
LayoutTests/svg/custom/gradient-stop-style-change-expected.png [new file with mode: 0644]
LayoutTests/svg/custom/gradient-stop-style-change-expected.txt [new file with mode: 0644]
LayoutTests/svg/custom/gradient-stop-style-change.svg [new file with mode: 0644]
LayoutTests/svg/custom/gradient-stroke-width-expected.txt
LayoutTests/svg/custom/grayscale-gradient-mask-expected.txt
LayoutTests/svg/custom/image-with-transform-clip-filter-expected.txt
LayoutTests/svg/custom/invalid-css-expected.txt
LayoutTests/svg/custom/js-late-gradient-and-object-creation-expected.txt
LayoutTests/svg/custom/js-late-gradient-creation-expected.txt
LayoutTests/svg/custom/js-late-marker-and-object-creation-expected.txt
LayoutTests/svg/custom/js-late-marker-creation-expected.txt
LayoutTests/svg/custom/js-update-gradient-expected.txt
LayoutTests/svg/custom/js-update-pattern-child-expected.txt
LayoutTests/svg/custom/js-update-pattern-expected.txt
LayoutTests/svg/custom/js-update-stop-expected.txt
LayoutTests/svg/custom/large-bounding-box-percents-expected.txt
LayoutTests/svg/custom/marker-changes-expected.txt
LayoutTests/svg/custom/marker-child-changes-expected.txt
LayoutTests/svg/custom/marker-viewBox-changes-expected.txt
LayoutTests/svg/custom/non-opaque-filters-expected.txt
LayoutTests/svg/custom/pattern-cycle-detection-expected.txt
LayoutTests/svg/custom/pattern-deep-referencing-expected.txt
LayoutTests/svg/custom/pattern-in-defs-expected.txt
LayoutTests/svg/custom/text-clip-expected.txt
LayoutTests/svg/custom/text-filter-expected.txt
LayoutTests/svg/custom/text-gradient-no-content-expected.txt
LayoutTests/svg/custom/tref-update-expected.txt
LayoutTests/svg/custom/use-clipped-hit-expected.txt
LayoutTests/svg/custom/use-instanceRoot-modifications-expected.txt
LayoutTests/svg/custom/use-modify-container-in-target-expected.txt
LayoutTests/svg/custom/use-modify-target-container-expected.txt
LayoutTests/svg/custom/use-modify-target-symbol-expected.txt
LayoutTests/svg/custom/use-on-g-containing-use-expected.txt
LayoutTests/svg/custom/use-on-g-expected.txt
LayoutTests/svg/custom/use-on-rect-expected.txt
LayoutTests/svg/custom/use-on-symbol-expected.txt
LayoutTests/svg/custom/use-on-symbol-inside-pattern-expected.txt
LayoutTests/svg/custom/use-on-text-expected.txt
LayoutTests/svg/custom/use-on-use-expected.txt
LayoutTests/svg/custom/use-property-changes-through-dom-expected.txt
LayoutTests/svg/custom/use-property-changes-through-svg-dom-expected.txt
LayoutTests/svg/custom/use-recursion-1-expected.txt
LayoutTests/svg/custom/use-recursion-3-expected.txt
LayoutTests/svg/custom/use-recursion-4-expected.txt
LayoutTests/svg/custom/use-symbol-overflow-expected.txt
LayoutTests/svg/custom/use-transform-expected.txt
LayoutTests/svg/custom/visibility-override-clip-expected.txt
LayoutTests/svg/custom/visibility-override-filter-expected.txt
LayoutTests/svg/custom/visibility-override-mask-expected.txt
WebCore/ChangeLog
WebCore/WebCore.xcodeproj/project.pbxproj
WebCore/ksvg2/css/SVGCSSStyleSelector.cpp
WebCore/ksvg2/css/SVGRenderStyle.cpp
WebCore/ksvg2/css/SVGRenderStyle.h
WebCore/ksvg2/svg/SVGDefsElement.cpp
WebCore/ksvg2/svg/SVGGradientElement.cpp
WebCore/ksvg2/svg/SVGGradientElement.h
WebCore/ksvg2/svg/SVGStopElement.cpp
WebCore/ksvg2/svg/SVGStopElement.h
WebCore/rendering/RenderSVGContainer.cpp
WebCore/rendering/RenderSVGContainer.h
WebCore/rendering/RenderSVGGradientStop.cpp [new file with mode: 0644]
WebCore/rendering/RenderSVGGradientStop.h [new file with mode: 0644]
WebCore/rendering/RenderSVGHiddenContainer.cpp [new file with mode: 0644]
WebCore/rendering/RenderSVGHiddenContainer.h [new file with mode: 0644]