[webkit-changes] [WebKit/WebKit] f6dbc5: Delay creation of InputType and user agent shadow ...
Ryosuke Niwa
noreply at github.com
Thu Feb 22 13:19:11 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: f6dbc5c5c7258d5fd40c7010373c3eb3018b82d8
https://github.com/WebKit/WebKit/commit/f6dbc5c5c7258d5fd40c7010373c3eb3018b82d8
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M Source/WebCore/dom/Element.cpp
M Source/WebCore/html/HTMLInputElement.cpp
M Source/WebCore/html/HTMLInputElement.h
M Source/WebCore/html/ValidatedFormListedElement.h
Log Message:
-----------
Delay creation of InputType and user agent shadow trees during cloning
https://bugs.webkit.org/show_bug.cgi?id=269900
Reviewed by Yusuke Suzuki.
This PR delays the construction of InputType and user agent shadow tree when cloning an input element
such that InputType is initialized after all the attributes are cloned, and its shadow tree is
constructed as the element becomes connected to a document.
* Source/WebCore/dom/Element.cpp:
(WebCore::Element::parserSetAttributes):
(WebCore::Element::cloneAttributesFromElement): Call initializeInputTypeAfterParsingOrCloning.
(WebCore::Element::cloneDataFromElement): Added an assertion to make sure the UA shadow tree's
construction has not happened yet.
* Source/WebCore/html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::create):
(WebCore::HTMLInputElement::cloneElementWithoutAttributesAndChildren): Added.
(WebCore::HTMLInputElement::initializeInputTypeAfterParsingOrCloning): Renamed from
parserInitializeInputType.
(WebCore::HTMLInputElement::attributeChanged):
(WebCore::HTMLInputElement::copyNonAttributePropertiesFromElement): Don't update the shadow tree unless
we have already created it.
* Source/WebCore/html/HTMLInputElement.h:
* Source/WebCore/html/ValidatedFormListedElement.h:
Canonical link: https://commits.webkit.org/275200@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list