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

Side by Side Diff: Source/WebCore/svg/animation/SVGSMILElement.h

Issue 11184044: Merge 130777 - Prevent animation when CSS attributeType is invalid. (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1271/
Patch Set: Created 8 years, 2 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) 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2008 Apple 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 virtual void parseAttribute(const Attribute&) OVERRIDE; 48 virtual void parseAttribute(const Attribute&) OVERRIDE;
49 virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE; 49 virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE;
50 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE; 50 virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
51 virtual void removedFrom(ContainerNode*) OVERRIDE; 51 virtual void removedFrom(ContainerNode*) OVERRIDE;
52 52
53 virtual bool hasValidAttributeType() = 0; 53 virtual bool hasValidAttributeType() = 0;
54 virtual void animationAttributeChanged() = 0; 54 virtual void animationAttributeChanged() = 0;
55 55
56 SMILTimeContainer* timeContainer() const { return m_timeContainer.get(); } 56 SMILTimeContainer* timeContainer() const { return m_timeContainer.get(); }
57 57
58 SVGElement* targetElement(); 58 SVGElement* targetElement(ResolveTarget = ResolveNewTarget);
59 void resetTargetElement(); 59 void resetTargetElement();
60 const QualifiedName& attributeName() const { return m_attributeName; } 60 const QualifiedName& attributeName() const { return m_attributeName; }
61 61
62 void beginByLinkActivation(); 62 void beginByLinkActivation();
63 63
64 enum Restart { 64 enum Restart {
65 RestartAlways, 65 RestartAlways,
66 RestartWhenNotActive, 66 RestartWhenNotActive,
67 RestartNever 67 RestartNever
68 }; 68 };
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 virtual void applyResultsToTarget() = 0; 111 virtual void applyResultsToTarget() = 0;
112 112
113 protected: 113 protected:
114 void addBeginTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin:: Origin = SMILTimeWithOrigin::ParserOrigin); 114 void addBeginTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin:: Origin = SMILTimeWithOrigin::ParserOrigin);
115 void addEndTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::Or igin = SMILTimeWithOrigin::ParserOrigin); 115 void addEndTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::Or igin = SMILTimeWithOrigin::ParserOrigin);
116 116
117 void setInactive() { m_activeState = Inactive; } 117 void setInactive() { m_activeState = Inactive; }
118 118
119 // Sub-classes may need to take action when the target is changed. 119 // Sub-classes may need to take action when the target is changed.
120 virtual void targetElementWillChange(SVGElement* currentTarget, SVGElement* newTarget); 120 virtual void targetElementWillChange(SVGElement* currentTarget, SVGElement* newTarget);
121 virtual void setAttributeName(const QualifiedName&);
121 122
122 private: 123 private:
123 virtual void startedActiveInterval() = 0; 124 virtual void startedActiveInterval() = 0;
124 void endedActiveInterval(); 125 void endedActiveInterval();
125 virtual void updateAnimation(float percent, unsigned repeat, SVGSMILElement* resultElement) = 0; 126 virtual void updateAnimation(float percent, unsigned repeat, SVGSMILElement* resultElement) = 0;
126 127
127 enum BeginOrEnd { 128 enum BeginOrEnd {
128 Begin, 129 Begin,
129 End 130 End
130 }; 131 };
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 mutable SMILTime m_cachedMin; 229 mutable SMILTime m_cachedMin;
229 mutable SMILTime m_cachedMax; 230 mutable SMILTime m_cachedMax;
230 231
231 friend class ConditionEventListener; 232 friend class ConditionEventListener;
232 }; 233 };
233 234
234 } 235 }
235 236
236 #endif // ENABLE(SVG) 237 #endif // ENABLE(SVG)
237 #endif // SVGSMILElement_h 238 #endif // SVGSMILElement_h
OLDNEW
« no previous file with comments | « Source/WebCore/svg/SVGAnimationElement.cpp ('k') | Source/WebCore/svg/animation/SVGSMILElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698