зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1381431 - Allow that restyle hints other than animation hints remain for flushing throttle animations. r=emilio
MozReview-Commit-ID: GMkgvaK0mAu --HG-- extra : rebase_source : 76b9cc6ab1b49b8e3b59c96915f9b72ccbe19970
This commit is contained in:
Родитель
e648e73317
Коммит
607348ba52
|
@ -552,7 +552,7 @@ ServoRestyleManager::ProcessPostTraversal(
|
|||
if (wasRestyled && oldStyleContext) {
|
||||
MOZ_ASSERT(styleFrame || displayContentsNode);
|
||||
RefPtr<ServoStyleContext> currentContext =
|
||||
aRestyleState.StyleSet().ResolveServoStyle(aElement);
|
||||
aRestyleState.StyleSet().ResolveServoStyle(aElement, aRestyleBehavior);
|
||||
MOZ_ASSERT(oldStyleContext->ComputedValues() != currentContext->ComputedValues());
|
||||
|
||||
newContext = currentContext;
|
||||
|
|
|
@ -510,7 +510,8 @@ SERVO_BINDING_FUNC(Servo_TakeChangeHint,
|
|||
bool* was_restyled)
|
||||
SERVO_BINDING_FUNC(Servo_ResolveStyle, ServoStyleContextStrong,
|
||||
RawGeckoElementBorrowed element,
|
||||
RawServoStyleSetBorrowed set)
|
||||
RawServoStyleSetBorrowed set,
|
||||
mozilla::TraversalRestyleBehavior restyle_behavior)
|
||||
SERVO_BINDING_FUNC(Servo_ResolvePseudoStyle, ServoStyleContextStrong,
|
||||
RawGeckoElementBorrowed element,
|
||||
mozilla::CSSPseudoElementType pseudo_type,
|
||||
|
|
|
@ -196,7 +196,8 @@ ServoStyleSet::GetContext(nsIContent* aContent,
|
|||
ResolveStyleLazily(element, CSSPseudoElementType::NotPseudo, aPseudoTag, aParentContext);
|
||||
computedValues->UpdateWithElementState(element);
|
||||
} else {
|
||||
computedValues = ResolveServoStyle(element);
|
||||
computedValues = ResolveServoStyle(element,
|
||||
TraversalRestyleBehavior::Normal);
|
||||
}
|
||||
|
||||
MOZ_ASSERT(computedValues);
|
||||
|
@ -443,8 +444,10 @@ ServoStyleSet::ResolvePseudoElementStyle(Element* aOriginatingElement,
|
|||
nsIAtom* pseudoTag = nsCSSPseudoElements::GetPseudoAtom(aType);
|
||||
if (aPseudoElement) {
|
||||
MOZ_ASSERT(aType == aPseudoElement->GetPseudoElementType());
|
||||
computedValues = Servo_ResolveStyle(aPseudoElement,
|
||||
mRawSet.get()).Consume();
|
||||
computedValues =
|
||||
Servo_ResolveStyle(aPseudoElement,
|
||||
mRawSet.get(),
|
||||
TraversalRestyleBehavior::Normal).Consume();
|
||||
} else {
|
||||
const ServoComputedValues* parentStyle =
|
||||
aParentContext ? aParentContext->ComputedValues() : nullptr;
|
||||
|
@ -1096,10 +1099,13 @@ ServoStyleSet::CompatibilityModeChanged()
|
|||
}
|
||||
|
||||
already_AddRefed<ServoStyleContext>
|
||||
ServoStyleSet::ResolveServoStyle(Element* aElement)
|
||||
ServoStyleSet::ResolveServoStyle(Element* aElement,
|
||||
TraversalRestyleBehavior aRestyleBehavior)
|
||||
{
|
||||
UpdateStylistIfNeeded();
|
||||
return Servo_ResolveStyle(aElement, mRawSet.get()).Consume();
|
||||
return Servo_ResolveStyle(aElement,
|
||||
mRawSet.get(),
|
||||
aRestyleBehavior).Consume();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -362,7 +362,9 @@ public:
|
|||
* Resolve style for the given element, and return it as a
|
||||
* ServoComputedValues, not an nsStyleContext.
|
||||
*/
|
||||
already_AddRefed<ServoStyleContext> ResolveServoStyle(dom::Element* aElement);
|
||||
already_AddRefed<ServoStyleContext>
|
||||
ResolveServoStyle(dom::Element* aElement,
|
||||
TraversalRestyleBehavior aRestyleBehavior);
|
||||
|
||||
bool GetKeyframesForName(const nsString& aName,
|
||||
const nsTimingFunction& aTimingFunction,
|
||||
|
|
Загрузка…
Ссылка в новой задаче