2011-07-01 Dirk Schulze <krit@webkit.org>
authorkrit@webkit.org <krit@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 1 Jul 2011 08:37:49 +0000 (08:37 +0000)
committerkrit@webkit.org <krit@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 1 Jul 2011 08:37:49 +0000 (08:37 +0000)
commit079942f7f3f1a2ca6e26ffb1ab5d71e50eff840d
tree640d77586bf5dbd7fa2727cfb08471af4cc3ac93
parent2cb327cf572efbb8c1713d235da926dacba57f86
2011-07-01  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGAnimatedInteger animation
        https://bugs.webkit.org/show_bug.cgi?id=63789

        Test animation of SVGAnimatedInteger. Added the test to the wk2 skip list.

        * platform/mac-wk2/Skipped:
        * svg/animations/script-tests/svginteger-animation-1.js: Added.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/animations/svginteger-animation-1-expected.txt: Added.
        * svg/animations/svginteger-animation-1.html: Added.
2011-07-01  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVGAnimatedType should support SVGAnimatedInteger animation
        https://bugs.webkit.org/show_bug.cgi?id=63789

        Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
        This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedInteger.

        SVGAnimatedInteger is used for some attributes of SVG filter effects. The animation of those attributes work after this patch.

        Test: svg/animations/svginteger-animation-1.html

        * CMakeLists.txt: Added file to build system.
        * GNUmakefile.list.am: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * svg/SVGAllInOne.cpp: Ditto.
        * svg/SVGAnimateElement.cpp: Make use of AnimatedInteger.
        (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
        (WebCore::SVGAnimateElement::calculateAnimatedValue):
        (WebCore::SVGAnimateElement::calculateFromAndToValues):
        (WebCore::SVGAnimateElement::calculateFromAndByValues):
        (WebCore::SVGAnimateElement::resetToBaseValue):
        (WebCore::SVGAnimateElement::applyResultsToTarget):
        (WebCore::SVGAnimateElement::calculateDistance):
        * svg/SVGAnimatedInteger.cpp: Added. The new animator for SVGAnimatedInteger.
        (WebCore::SVGAnimatedIntegerAnimator::SVGAnimatedIntegerAnimator):
        (WebCore::SVGAnimatedIntegerAnimator::constructFromString):
        (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndToValues):
        (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndByValues):
        (WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):
        (WebCore::SVGAnimatedIntegerAnimator::calculateDistance):
        * svg/SVGAnimatedInteger.h:
        (WebCore::SVGAnimatedIntegerAnimator::~SVGAnimatedIntegerAnimator):
        * svg/SVGAnimatedType.cpp: Added handler for AnimatedInteger.
        (WebCore::SVGAnimatedType::~SVGAnimatedType):
        (WebCore::SVGAnimatedType::createInteger):
        (WebCore::SVGAnimatedType::integer):
        (WebCore::SVGAnimatedType::valueAsString):
        (WebCore::SVGAnimatedType::setValueAsString):
        * svg/SVGAnimatedType.h:
        * svg/SVGAnimatorFactory.h:
        (WebCore::SVGAnimatorFactory::create):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@90218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
18 files changed:
LayoutTests/ChangeLog
LayoutTests/platform/wk2/Skipped
LayoutTests/svg/animations/script-tests/svginteger-animation-1.js [new file with mode: 0644]
LayoutTests/svg/animations/svginteger-animation-1-expected.txt [new file with mode: 0644]
LayoutTests/svg/animations/svginteger-animation-1.html [new file with mode: 0644]
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.list.am
Source/WebCore/WebCore.gypi
Source/WebCore/WebCore.pro
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/svg/SVGAllInOne.cpp
Source/WebCore/svg/SVGAnimateElement.cpp
Source/WebCore/svg/SVGAnimatedInteger.cpp [new file with mode: 0644]
Source/WebCore/svg/SVGAnimatedInteger.h
Source/WebCore/svg/SVGAnimatedType.cpp
Source/WebCore/svg/SVGAnimatedType.h
Source/WebCore/svg/SVGAnimatorFactory.h