| Index: Source/core/html/HTMLFormControlElement.h
|
| diff --git a/Source/core/html/HTMLFormControlElement.h b/Source/core/html/HTMLFormControlElement.h
|
| index 33f94439400cef0307050237ae35b88e057cfdb1..cb0719be95c643bc972fa6624ec6d9c0d157e9db 100644
|
| --- a/Source/core/html/HTMLFormControlElement.h
|
| +++ b/Source/core/html/HTMLFormControlElement.h
|
| @@ -34,6 +34,7 @@ class HTMLFormElement;
|
| class ValidationMessageClient;
|
|
|
| enum CheckValidityEventBehavior { CheckValidityDispatchNoEvent, CheckValidityDispatchInvalidEvent };
|
| +enum ValidityRecalcReason { ElementAddition, ElementRemoval, ElementModification };
|
|
|
| // HTMLFormControlElement is the default implementation of FormAssociatedElement,
|
| // and form-associated element implementations should use HTMLFormControlElement
|
| @@ -142,7 +143,7 @@ protected:
|
| virtual void didRecalcStyle(StyleRecalcChange) override final;
|
|
|
| // This must be called any time the result of willValidate() has changed.
|
| - void setNeedsWillValidateCheck();
|
| + void setNeedsWillValidateCheck(bool = true);
|
| virtual bool recalcWillValidate() const;
|
|
|
| virtual void resetImpl() { }
|
| @@ -168,7 +169,9 @@ private:
|
| ValidationMessageClient* validationMessageClient() const;
|
|
|
| // Requests validity recalc for the form owner, if one exists.
|
| - void formOwnerSetNeedsValidityCheck();
|
| + // In case of removal, isValid specifies element validity upon removal.
|
| + // In case of addition and modification, it specified new validity.
|
| + void formOwnerSetNeedsValidityCheck(ValidityRecalcReason, bool isValid);
|
| // Requests validity recalc for all ancestor fieldsets, if exist.
|
| void fieldSetAncestorsSetNeedsValidityCheck(Node*);
|
|
|
|
|