| Index: Source/core/html/HTMLFormControlElement.cpp
|
| diff --git a/Source/core/html/HTMLFormControlElement.cpp b/Source/core/html/HTMLFormControlElement.cpp
|
| index e445b428ce2ed0c29887428196476e97e500e469..66d9fe15c0040733dfe7faf74b561fbd8a489ac1 100644
|
| --- a/Source/core/html/HTMLFormControlElement.cpp
|
| +++ b/Source/core/html/HTMLFormControlElement.cpp
|
| @@ -152,7 +152,7 @@ void HTMLFormControlElement::parseAttribute(const QualifiedName& name, const Ato
|
| m_isReadOnly = !value.isNull();
|
| if (wasReadOnly != m_isReadOnly) {
|
| setNeedsWillValidateCheck();
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(StyleChangeReasonForTracing::fromAttribute(name), SubtreeStyleChange);
|
| if (renderer() && renderer()->style()->hasAppearance())
|
| RenderTheme::theme().stateChanged(renderer(), ReadOnlyControlState);
|
| }
|
| @@ -172,7 +172,7 @@ void HTMLFormControlElement::parseAttribute(const QualifiedName& name, const Ato
|
| void HTMLFormControlElement::disabledAttributeChanged()
|
| {
|
| setNeedsWillValidateCheck();
|
| - didAffectSelector(AffectedSelectorDisabled | AffectedSelectorEnabled);
|
| + didAffectSelector(StyleChangeReasonForTracing::createWithExtraData(StyleChangeReason::PseudoClass, StyleChangeExtraData::Disabled), AffectedSelectorDisabled | AffectedSelectorEnabled);
|
| if (renderer() && renderer()->style()->hasAppearance())
|
| RenderTheme::theme().stateChanged(renderer(), EnabledControlState);
|
| if (isDisabledFormControl() && treeScope().adjustedFocusedElement() == this) {
|
| @@ -187,7 +187,7 @@ void HTMLFormControlElement::requiredAttributeChanged()
|
| setNeedsValidityCheck();
|
| // Style recalculation is needed because style selectors may include
|
| // :required and :optional pseudo-classes.
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(StyleChangeReasonForTracing::fromAttribute(requiredAttr), SubtreeStyleChange);
|
| }
|
|
|
| bool HTMLFormControlElement::supportsAutofocus() const
|
| @@ -206,7 +206,7 @@ void HTMLFormControlElement::setAutofilled(bool autofilled)
|
| return;
|
|
|
| m_isAutofilled = autofilled;
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(StyleChangeReasonForTracing::create(StyleChangeReason::ControlValue), SubtreeStyleChange);
|
| }
|
|
|
| static bool shouldAutofocusOnAttach(const HTMLFormControlElement* element)
|
| @@ -402,7 +402,7 @@ void HTMLFormControlElement::setNeedsWillValidateCheck()
|
| m_willValidateInitialized = true;
|
| m_willValidate = newWillValidate;
|
| setNeedsValidityCheck();
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(StyleChangeReasonForTracing::create(StyleChangeReason::Validate), SubtreeStyleChange);
|
| if (!m_willValidate)
|
| hideVisibleValidationMessage();
|
| }
|
| @@ -497,7 +497,7 @@ void HTMLFormControlElement::setNeedsValidityCheck()
|
| {
|
| if (!m_validityIsDirty && willValidate()) {
|
| // Update style for pseudo classes such as :valid :invalid.
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(StyleChangeReasonForTracing::create(StyleChangeReason::Validate), SubtreeStyleChange);
|
| m_validityIsDirty = true;
|
| }
|
|
|
|
|