Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Side by Side Diff: Source/core/svg/properties/SVGAnimatedProperty.h

Issue 248503004: Synchronize attribute before animation ends (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Re-upload with --no-find-copies Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 G* * Redistributions in binary form must reproduce the above 10 G* * Redistributions in binary form must reproduce the above
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 { 149 {
150 ASSERT(isAnimating()); 150 ASSERT(isAnimating());
151 151
152 RefPtr<SVGPropertyBase> value = passValue; 152 RefPtr<SVGPropertyBase> value = passValue;
153 ASSERT(value->type() == Property::classType()); 153 ASSERT(value->type() == Property::classType());
154 m_currentValue = static_pointer_cast<Property>(value.release()); 154 m_currentValue = static_pointer_cast<Property>(value.release());
155 } 155 }
156 156
157 virtual void animationEnded() OVERRIDE 157 virtual void animationEnded() OVERRIDE
158 { 158 {
159 SVGAnimatedPropertyBase::animationEnded();
160
161 ASSERT(m_currentValue); 159 ASSERT(m_currentValue);
162 m_currentValue.clear(); 160 m_currentValue.clear();
161
162 SVGAnimatedPropertyBase::animationEnded();
163 } 163 }
164 164
165 protected: 165 protected:
166 SVGAnimatedPropertyCommon(SVGElement* contextElement, const QualifiedName& a ttributeName, PassRefPtr<Property> initialValue) 166 SVGAnimatedPropertyCommon(SVGElement* contextElement, const QualifiedName& a ttributeName, PassRefPtr<Property> initialValue)
167 : SVGAnimatedPropertyBase(Property::classType(), contextElement, attribu teName) 167 : SVGAnimatedPropertyBase(Property::classType(), contextElement, attribu teName)
168 , m_baseValue(initialValue) 168 , m_baseValue(initialValue)
169 { 169 {
170 } 170 }
171 171
172 private: 172 private:
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
309 // When animated: 309 // When animated:
310 // m_animValTearOff targets m_currentValue. 310 // m_animValTearOff targets m_currentValue.
311 // m_baseValTearOff targets m_baseValue. 311 // m_baseValTearOff targets m_baseValue.
312 RefPtr<TearOffType> m_baseValTearOff; 312 RefPtr<TearOffType> m_baseValTearOff;
313 RefPtr<TearOffType> m_animValTearOff; 313 RefPtr<TearOffType> m_animValTearOff;
314 }; 314 };
315 315
316 } 316 }
317 317
318 #endif // SVGAnimatedProperty_h 318 #endif // SVGAnimatedProperty_h
OLDNEW
« no previous file with comments | « LayoutTests/svg/custom/animate-svgsvgelement-expected.txt ('k') | Source/core/svg/properties/SVGAnimatedProperty.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698