| Index: Source/core/html/HTMLFormControlElement.cpp
|
| diff --git a/Source/core/html/HTMLFormControlElement.cpp b/Source/core/html/HTMLFormControlElement.cpp
|
| index 4972a38a1bd7908f3be7cff35fbaaf736b078e9a..6029f3fe1e814339a8d896db5eb0e1bf69de265b 100644
|
| --- a/Source/core/html/HTMLFormControlElement.cpp
|
| +++ b/Source/core/html/HTMLFormControlElement.cpp
|
| @@ -151,7 +151,7 @@ void HTMLFormControlElement::parseAttribute(const QualifiedName& name, const Ato
|
| m_isReadOnly = !value.isNull();
|
| if (wasReadOnly != m_isReadOnly) {
|
| setNeedsWillValidateCheck();
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::fromAttribute(name));
|
| if (renderer() && renderer()->style()->hasAppearance())
|
| RenderTheme::theme().stateChanged(renderer(), ReadOnlyControlState);
|
| }
|
| @@ -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(SubtreeStyleChange, StyleChangeReasonForTracing::fromAttribute(requiredAttr));
|
| }
|
|
|
| bool HTMLFormControlElement::supportsAutofocus() const
|
| @@ -206,7 +206,7 @@ void HTMLFormControlElement::setAutofilled(bool autofilled)
|
| return;
|
|
|
| m_isAutofilled = autofilled;
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::create(StyleChangeReason::ControlValue));
|
| }
|
|
|
| static bool shouldAutofocusOnAttach(const HTMLFormControlElement* element)
|
| @@ -402,7 +402,7 @@ void HTMLFormControlElement::setNeedsWillValidateCheck()
|
| m_willValidateInitialized = true;
|
| m_willValidate = newWillValidate;
|
| setNeedsValidityCheck();
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::create(StyleChangeReason::Validate));
|
| if (!m_willValidate)
|
| hideVisibleValidationMessage();
|
| }
|
| @@ -493,7 +493,7 @@ void HTMLFormControlElement::setNeedsValidityCheck()
|
| bool newIsValid = valid();
|
| if (willValidate() && newIsValid != m_isValid) {
|
| // Update style for pseudo classes such as :valid :invalid.
|
| - setNeedsStyleRecalc(SubtreeStyleChange);
|
| + setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::createWithExtraData(StyleChangeReason::PseudoClass, StyleChangeExtraData::Invalid));
|
| }
|
| m_isValid = newIsValid;
|
|
|
|
|