Bug 1010067 part 4 - Rename nsTransition to mozilla::StyleTransition; r=dbaron
--- a/layout/style/nsComputedDOMStyle.cpp
+++ b/layout/style/nsComputedDOMStyle.cpp
@@ -5184,17 +5184,17 @@ nsComputedDOMStyle::DoGetTransitionDelay
const nsStyleDisplay* display = StyleDisplay();
nsDOMCSSValueList *valueList = GetROCSSValueList(true);
NS_ABORT_IF_FALSE(display->mTransitionDelayCount > 0,
"first item must be explicit");
uint32_t i = 0;
do {
- const nsTransition *transition = &display->mTransitions[i];
+ const StyleTransition *transition = &display->mTransitions[i];
nsROCSSPrimitiveValue* delay = new nsROCSSPrimitiveValue;
valueList->AppendCSSValue(delay);
delay->SetTime((float)transition->GetDelay() / (float)PR_MSEC_PER_SEC);
} while (++i < display->mTransitionDelayCount);
return valueList;
}
@@ -5204,17 +5204,17 @@ nsComputedDOMStyle::DoGetTransitionDurat
const nsStyleDisplay* display = StyleDisplay();
nsDOMCSSValueList *valueList = GetROCSSValueList(true);
NS_ABORT_IF_FALSE(display->mTransitionDurationCount > 0,
"first item must be explicit");
uint32_t i = 0;
do {
- const nsTransition *transition = &display->mTransitions[i];
+ const StyleTransition *transition = &display->mTransitions[i];
nsROCSSPrimitiveValue* duration = new nsROCSSPrimitiveValue;
valueList->AppendCSSValue(duration);
duration->SetTime((float)transition->GetDuration() / (float)PR_MSEC_PER_SEC);
} while (++i < display->mTransitionDurationCount);
return valueList;
}
@@ -5225,17 +5225,17 @@ nsComputedDOMStyle::DoGetTransitionPrope
const nsStyleDisplay* display = StyleDisplay();
nsDOMCSSValueList *valueList = GetROCSSValueList(true);
NS_ABORT_IF_FALSE(display->mTransitionPropertyCount > 0,
"first item must be explicit");
uint32_t i = 0;
do {
- const nsTransition *transition = &display->mTransitions[i];
+ const StyleTransition *transition = &display->mTransitions[i];
nsROCSSPrimitiveValue* property = new nsROCSSPrimitiveValue;
valueList->AppendCSSValue(property);
nsCSSProperty cssprop = transition->GetProperty();
if (cssprop == eCSSPropertyExtra_all_properties)
property->SetIdent(eCSSKeyword_all);
else if (cssprop == eCSSPropertyExtra_no_properties)
property->SetIdent(eCSSKeyword_none);
else if (cssprop == eCSSProperty_UNKNOWN)
--- a/layout/style/nsRuleNode.cpp
+++ b/layout/style/nsRuleNode.cpp
@@ -4819,17 +4819,17 @@ nsRuleNode::ComputeDisplayData(void* aSt
const TransitionPropInfo& i = transitionPropInfo[p];
TransitionPropData& d = transitionPropData[p];
display->*(i.sdCount) = d.num;
}
// Fill in the transitions we just allocated with the appropriate values.
for (uint32_t i = 0; i < numTransitions; ++i) {
- nsTransition *transition = &display->mTransitions[i];
+ StyleTransition *transition = &display->mTransitions[i];
if (i >= delay.num) {
transition->SetDelay(display->mTransitions[i % delay.num].GetDelay());
} else if (delay.unit == eCSSUnit_Inherit) {
// FIXME (Bug 522599) (for all transition properties): write a test that
// detects when this was wrong for i >= delay.num if parent had
// count for this property not equal to length
NS_ABORT_IF_FALSE(i < parentDisplay->mTransitionDelayCount,
--- a/layout/style/nsStyleStruct.cpp
+++ b/layout/style/nsStyleStruct.cpp
@@ -2309,34 +2309,36 @@ void nsTimingFunction::AssignFromKeyword
NS_ABORT_IF_FALSE(0 <= aTimingFunctionType && aTimingFunctionType < 5,
"keyword out of range");
mFunc.mX1 = timingFunctionValues[aTimingFunctionType][0];
mFunc.mY1 = timingFunctionValues[aTimingFunctionType][1];
mFunc.mX2 = timingFunctionValues[aTimingFunctionType][2];
mFunc.mY2 = timingFunctionValues[aTimingFunctionType][3];
}
-nsTransition::nsTransition(const nsTransition& aCopy)
+mozilla::StyleTransition::StyleTransition(const StyleTransition& aCopy)
: mTimingFunction(aCopy.mTimingFunction)
, mDuration(aCopy.mDuration)
, mDelay(aCopy.mDelay)
, mProperty(aCopy.mProperty)
, mUnknownProperty(aCopy.mUnknownProperty)
{
}
-void nsTransition::SetInitialValues()
+void
+mozilla::StyleTransition::SetInitialValues()
{
mTimingFunction = nsTimingFunction(NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE);
mDuration = 0.0;
mDelay = 0.0;
mProperty = eCSSPropertyExtra_all_properties;
}
-void nsTransition::SetUnknownProperty(const nsAString& aUnknownProperty)
+void
+mozilla::StyleTransition::SetUnknownProperty(const nsAString& aUnknownProperty)
{
NS_ASSERTION(nsCSSProps::LookupProperty(aUnknownProperty,
nsCSSProps::eEnabledForAllContent) ==
eCSSProperty_UNKNOWN,
"should be unknown property");
mProperty = eCSSProperty_UNKNOWN;
mUnknownProperty = do_GetAtom(aUnknownProperty);
}
--- a/layout/style/nsStyleStruct.h
+++ b/layout/style/nsStyleStruct.h
@@ -1804,19 +1804,21 @@ struct nsTimingFunction {
{
return !(*this == aOther);
}
private:
void AssignFromKeyword(int32_t aTimingFunctionType);
};
-struct nsTransition {
- nsTransition() { /* leaves uninitialized; see also SetInitialValues */ }
- explicit nsTransition(const nsTransition& aCopy);
+namespace mozilla {
+
+struct StyleTransition {
+ StyleTransition() { /* leaves uninitialized; see also SetInitialValues */ }
+ explicit StyleTransition(const StyleTransition& aCopy);
void SetInitialValues();
// Delay and Duration are in milliseconds
const nsTimingFunction& GetTimingFunction() const { return mTimingFunction; }
float GetDelay() const { return mDelay; }
float GetDuration() const { return mDuration; }
@@ -1828,35 +1830,33 @@ struct nsTransition {
void SetDelay(float aDelay) { mDelay = aDelay; }
void SetDuration(float aDuration) { mDuration = aDuration; }
void SetProperty(nsCSSProperty aProperty)
{
NS_ASSERTION(aProperty != eCSSProperty_UNKNOWN, "invalid property");
mProperty = aProperty;
}
void SetUnknownProperty(const nsAString& aUnknownProperty);
- void CopyPropertyFrom(const nsTransition& aOther)
+ void CopyPropertyFrom(const StyleTransition& aOther)
{
mProperty = aOther.mProperty;
mUnknownProperty = aOther.mUnknownProperty;
}
nsTimingFunction& TimingFunctionSlot() { return mTimingFunction; }
private:
nsTimingFunction mTimingFunction;
float mDuration;
float mDelay;
nsCSSProperty mProperty;
nsCOMPtr<nsIAtom> mUnknownProperty; // used when mProperty is
// eCSSProperty_UNKNOWN
};
-namespace mozilla {
-
struct StyleAnimation {
StyleAnimation() { /* leaves uninitialized; see also SetInitialValues */ }
explicit StyleAnimation(const StyleAnimation& aCopy);
void SetInitialValues();
// Delay and Duration are in milliseconds
@@ -1967,17 +1967,17 @@ struct nsStyleDisplay {
// null, as appropriate.)
uint8_t mBackfaceVisibility;
uint8_t mTransformStyle;
nsRefPtr<nsCSSValueSharedList> mSpecifiedTransform; // [reset]
nsStyleCoord mTransformOrigin[3]; // [reset] percent, coord, calc, 3rd param is coord, calc only
nsStyleCoord mChildPerspective; // [reset] coord
nsStyleCoord mPerspectiveOrigin[2]; // [reset] percent, coord, calc
- nsAutoTArray<nsTransition, 1> mTransitions; // [reset]
+ nsAutoTArray<mozilla::StyleTransition, 1> mTransitions; // [reset]
// The number of elements in mTransitions that are not from repeating
// a list due to another property being longer.
uint32_t mTransitionTimingFunctionCount,
mTransitionDurationCount,
mTransitionDelayCount,
mTransitionPropertyCount;
nsAutoTArray<mozilla::StyleAnimation, 1> mAnimations; // [reset]
--- a/layout/style/nsTransitionManager.cpp
+++ b/layout/style/nsTransitionManager.cpp
@@ -224,17 +224,17 @@ nsTransitionManager::StyleContextChanged
// Per http://lists.w3.org/Archives/Public/www-style/2009Aug/0109.html
// I'll consider only the transitions from the number of items in
// 'transition-property' on down, and later ones will override earlier
// ones (tracked using |whichStarted|).
bool startedAny = false;
nsCSSPropertySet whichStarted;
for (uint32_t i = disp->mTransitionPropertyCount; i-- != 0; ) {
- const nsTransition& t = disp->mTransitions[i];
+ const StyleTransition& t = disp->mTransitions[i];
// Check delay and duration first, since they default to zero, and
// when they're both zero, we can ignore the transition.
if (t.GetDelay() != 0.0f || t.GetDuration() != 0.0f) {
// We might have something to transition. See if any of the
// properties in question changed and are animatable.
// FIXME: Would be good to find a way to share code between this
// interpretation of transition-property and the one below.
nsCSSProperty property = t.GetProperty();
@@ -270,17 +270,17 @@ nsTransitionManager::StyleContextChanged
// still in the set of properties to transition), but we didn't just
// start the transition because delay and duration are both zero.
if (et) {
bool checkProperties =
disp->mTransitions[0].GetProperty() != eCSSPropertyExtra_all_properties;
nsCSSPropertySet allTransitionProperties;
if (checkProperties) {
for (uint32_t i = disp->mTransitionPropertyCount; i-- != 0; ) {
- const nsTransition& t = disp->mTransitions[i];
+ const StyleTransition& t = disp->mTransitions[i];
// FIXME: Would be good to find a way to share code between this
// interpretation of transition-property and the one above.
nsCSSProperty property = t.GetProperty();
if (property == eCSSPropertyExtra_no_properties ||
property == eCSSPropertyExtra_variable ||
property == eCSSProperty_UNKNOWN) {
// Nothing to do, but need to exclude this from cases below.
} else if (property == eCSSPropertyExtra_all_properties) {
@@ -371,24 +371,25 @@ nsTransitionManager::StyleContextChanged
}
et->mStyleRule = nullptr;
return coverRule.forget();
}
void
-nsTransitionManager::ConsiderStartingTransition(nsCSSProperty aProperty,
- const nsTransition& aTransition,
- dom::Element* aElement,
- CommonElementAnimationData*& aElementTransitions,
- nsStyleContext* aOldStyleContext,
- nsStyleContext* aNewStyleContext,
- bool* aStartedAny,
- nsCSSPropertySet* aWhichStarted)
+nsTransitionManager::ConsiderStartingTransition(
+ nsCSSProperty aProperty,
+ const StyleTransition& aTransition,
+ dom::Element* aElement,
+ CommonElementAnimationData*& aElementTransitions,
+ nsStyleContext* aOldStyleContext,
+ nsStyleContext* aNewStyleContext,
+ bool* aStartedAny,
+ nsCSSPropertySet* aWhichStarted)
{
// IsShorthand itself will assert if aProperty is not a property.
NS_ABORT_IF_FALSE(!nsCSSProps::IsShorthand(aProperty),
"property out of range");
NS_ASSERTION(!aElementTransitions ||
aElementTransitions->mElement == aElement, "Element mismatch");
if (aWhichStarted->HasProperty(aProperty)) {
--- a/layout/style/nsTransitionManager.h
+++ b/layout/style/nsTransitionManager.h
@@ -11,19 +11,22 @@
#include "mozilla/Attributes.h"
#include "mozilla/MemoryReporting.h"
#include "AnimationCommon.h"
#include "nsCSSPseudoElements.h"
class nsStyleContext;
class nsPresContext;
class nsCSSPropertySet;
-struct nsTransition;
struct ElementDependentRuleProcessorData;
+namespace mozilla {
+struct StyleTransition;
+}
+
/*****************************************************************************
* Per-Element data *
*****************************************************************************/
struct ElementPropertyTransition : public mozilla::ElementAnimation
{
virtual ElementPropertyTransition* AsTransition() { return this; }
virtual const ElementPropertyTransition* AsTransition() const { return this; }
@@ -151,17 +154,17 @@ public:
bool aCreateIfNeeded);
protected:
virtual void ElementDataRemoved() MOZ_OVERRIDE;
virtual void AddElementData(mozilla::css::CommonElementAnimationData* aData) MOZ_OVERRIDE;
private:
void ConsiderStartingTransition(nsCSSProperty aProperty,
- const nsTransition& aTransition,
+ const mozilla::StyleTransition& aTransition,
mozilla::dom::Element* aElement,
CommonElementAnimationData*& aElementTransitions,
nsStyleContext* aOldStyleContext,
nsStyleContext* aNewStyleContext,
bool* aStartedAny,
nsCSSPropertySet* aWhichStarted);
void WalkTransitionRule(ElementDependentRuleProcessorData* aData,
nsCSSPseudoElements::Type aPseudoType);