diff options
author | Steve Block <steveblock@google.com> | 2011-05-25 08:15:24 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-05-25 08:15:24 -0700 |
commit | fa91a01aee5d4a80ca6c80f722116b850f09996c (patch) | |
tree | f72740e60d3c3d4f0ab144e88c03d1f134944ce3 /Source/WebCore/svg/SVGAnimationElement.cpp | |
parent | 96f37d6d1b390f6690858789706ee6ec25bc1677 (diff) | |
parent | feebf8e7a79ad68b04a1a948e2b8078d6e5f0048 (diff) | |
download | external_webkit-fa91a01aee5d4a80ca6c80f722116b850f09996c.zip external_webkit-fa91a01aee5d4a80ca6c80f722116b850f09996c.tar.gz external_webkit-fa91a01aee5d4a80ca6c80f722116b850f09996c.tar.bz2 |
Merge changes I78ff6a85,Ic85c6405,Ibf903baa,I3a0459db,I35140385,I54790419,I6bfe5d24,Ia9f39b83,I5bcecd5a,I1de96683,I543c6810,I8a5b0878,I0ae670bf,Ide4d58dc,I28ebaf3d,I499d6631,Ie5090e0d,I6d3e5f1f
* changes:
Merge WebKit at r78450: Update ThirdPartyProject.prop
Merge WebKit at r78450: Add new Font::canExpandAroundIdeographsInComplexText()
Merge WebKit at r78450: Add new ChromeClient::selectItemAlignmentFollowsMenuWritingDirection()
Merge WebKit at r78450: FrameLoaderClient::didRunInsecureContent() signature changed
Merge WebKit at r78450: HTMLAreaElement::getRect() renamed
Merge WebKit at r78450: FrameLoader::url() removed
Merge WebKit at r78450: HTMLParserQuirks removed
Merge WebKit at r78450: TextRun::padding() renamed
Merge WebKit at r78450: Use new FontMetrics
Merge WebKit at r78450: GraphicsContext current path removed
Merge WebKit at r78450: TransformationMatrix multiply methods renamed and meaning changed
Merge WebKit at r78450: FontCustomPlatformData::fontPlatformData() signature changed
Merge WebKit at r78450: IntRect::bottom()/right() renamed
Merge WebKit at r78450: Fix remaining conflicts
Merge WebKit at r78450: Fix conflicts due to new ENABLE_WEB_ARCHIVE guard
Merge WebKit at r78450: Fix conflicts in media controls
Merge WebKit at r78450: Fix Makefiles
Merge WebKit at r78450: Initial merge by git.
Diffstat (limited to 'Source/WebCore/svg/SVGAnimationElement.cpp')
-rw-r--r-- | Source/WebCore/svg/SVGAnimationElement.cpp | 28 |
1 files changed, 6 insertions, 22 deletions
diff --git a/Source/WebCore/svg/SVGAnimationElement.cpp b/Source/WebCore/svg/SVGAnimationElement.cpp index 0fcda6d..c56e3b6 100644 --- a/Source/WebCore/svg/SVGAnimationElement.cpp +++ b/Source/WebCore/svg/SVGAnimationElement.cpp @@ -38,7 +38,6 @@ #include "FloatConversion.h" #include "HTMLNames.h" #include "PlatformString.h" -#include "RenderObject.h" #include "SVGElementInstance.h" #include "SVGNames.h" #include "SVGParserUtilities.h" @@ -499,14 +498,6 @@ void SVGAnimationElement::currentValuesForValuesAnimation(float percent, float& effectivePercent = calculatePercentForSpline(effectivePercent, index); } } -static inline void adjustForCurrentColor(String& value, SVGElement* target) -{ - if (!target || !target->isStyled() || value != "currentColor") - return; - - if (RenderObject* targetRenderer = target->renderer()) - value = targetRenderer->style()->visitedDependentColor(CSSPropertyColor).name(); -} void SVGAnimationElement::startedActiveInterval() { @@ -531,29 +522,22 @@ void SVGAnimationElement::startedActiveInterval() String from = fromValue(); String to = toValue(); String by = byValue(); - SVGElement* target = targetElement(); if (animationMode == NoAnimation) return; - if (animationMode == FromToAnimation) { - adjustForCurrentColor(from, target); - adjustForCurrentColor(to, target); + if (animationMode == FromToAnimation) m_animationValid = calculateFromAndToValues(from, to); - } else if (animationMode == ToAnimation) { + else if (animationMode == ToAnimation) { // For to-animations the from value is the current accumulated value from lower priority animations. // The value is not static and is determined during the animation. - adjustForCurrentColor(to, target); m_animationValid = calculateFromAndToValues(String(), to); - } else if (animationMode == FromByAnimation) { - adjustForCurrentColor(from, target); - adjustForCurrentColor(by, target); + } else if (animationMode == FromByAnimation) m_animationValid = calculateFromAndByValues(from, by); - } else if (animationMode == ByAnimation) { - adjustForCurrentColor(by, target); + else if (animationMode == ByAnimation) m_animationValid = calculateFromAndByValues(String(), by); - } else if (animationMode == ValuesAnimation) { + else if (animationMode == ValuesAnimation) { m_animationValid = m_values.size() > 1 && (calcMode == CalcModePaced || !hasAttribute(SVGNames::keyTimesAttr) || hasAttribute(SVGNames::keyPointsAttr) || (m_values.size() == m_keyTimes.size())) - && (calcMode == CalcModeDiscrete || !m_keyTimes.size() || m_keyTimes.last() == 1.0) + && (calcMode == CalcModeDiscrete || !m_keyTimes.size() || m_keyTimes.last() == 1) && (calcMode != CalcModeSpline || ((m_keySplines.size() && (m_keySplines.size() == m_values.size() - 1)) || m_keySplines.size() == m_keyPoints.size() - 1)) && (!hasAttribute(SVGNames::keyPointsAttr) || (m_keyTimes.size() > 1 && m_keyTimes.size() == m_keyPoints.size())); if (calcMode == CalcModePaced && m_animationValid) |