mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 11:12:45 +00:00 
			
		
		
		
	LibWeb: Use cached_web_prototype() as much as possible
Unlike ensure_web_prototype<T>(), the cached version doesn't require the prototype type to be fully formed, so we can use it without including the FooPrototype.h header. It's also a bit less verbose. :^)
This commit is contained in:
		
							parent
							
								
									a85542958c
								
							
						
					
					
						commit
						ffad902c07
					
				
					 165 changed files with 176 additions and 325 deletions
				
			
		|  | @ -2077,7 +2077,7 @@ namespace Web::Bindings { | |||
|     if (interface.wrapper_base_class == "Wrapper") { | ||||
|         generator.append(R"~~~( | ||||
| @wrapper_class@::@wrapper_class@(JS::Realm& realm, @fully_qualified_name@& impl) | ||||
|     : Wrapper(verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<@prototype_class@>("@name@")) | ||||
|     : Wrapper(verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("@name@")) | ||||
|     , m_impl(impl) | ||||
| { | ||||
| } | ||||
|  | @ -2087,7 +2087,7 @@ namespace Web::Bindings { | |||
| @wrapper_class@::@wrapper_class@(JS::Realm& realm, @fully_qualified_name@& impl) | ||||
|     : @wrapper_base_class@(realm, impl) | ||||
| { | ||||
|     set_prototype(&verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<@prototype_class@>("@name@")); | ||||
|     set_prototype(&verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("@name@")); | ||||
| } | ||||
| )~~~"); | ||||
|     } | ||||
|  | @ -3775,7 +3775,7 @@ namespace Web::Bindings { | |||
| } | ||||
| 
 | ||||
| @wrapper_class@::@wrapper_class@(JS::Realm& realm, @fully_qualified_name@& impl) | ||||
|     : Wrapper(verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<@prototype_class@>("@name@")) | ||||
|     : Wrapper(verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("@name@")) | ||||
|     , m_impl(impl) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ void AudioConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
|     NativeFunction::initialize(realm); | ||||
| 
 | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<HTMLAudioElementPrototype>("HTMLAudioElement"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("HTMLAudioElement"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ void ImageConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
|     NativeFunction::initialize(realm); | ||||
| 
 | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<HTMLImageElementPrototype>("HTMLImageElement"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("HTMLImageElement"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ void LocationConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
| 
 | ||||
|     NativeFunction::initialize(realm); | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<LocationPrototype>("Location"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("Location"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -23,7 +23,7 @@ namespace Web::Bindings { | |||
| 
 | ||||
| // https://html.spec.whatwg.org/multipage/history.html#the-location-interface
 | ||||
| LocationObject::LocationObject(JS::Realm& realm) | ||||
|     : Object(verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<LocationPrototype>("Location")) | ||||
|     : Object(verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("Location")) | ||||
|     , m_default_properties(heap()) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ void NavigatorConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
| 
 | ||||
|     NativeFunction::initialize(realm); | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<NavigatorPrototype>("Navigator"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("Navigator"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -14,7 +14,7 @@ namespace Web { | |||
| namespace Bindings { | ||||
| 
 | ||||
| NavigatorObject::NavigatorObject(JS::Realm& realm) | ||||
|     : Object(verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<NavigatorPrototype>("Navigator")) | ||||
|     : Object(verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("Navigator")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -26,7 +26,7 @@ void OptionConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
|     NativeFunction::initialize(realm); | ||||
| 
 | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<HTMLOptionElementPrototype>("HTMLOptionElement"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("HTMLOptionElement"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ void WindowConstructor::initialize(JS::Realm& realm) | |||
|     auto& window = verify_cast<HTML::Window>(realm.global_object()); | ||||
| 
 | ||||
|     NativeFunction::initialize(realm); | ||||
|     define_direct_property(vm.names.prototype, &window.ensure_web_prototype<WindowPrototype>("Window"), 0); | ||||
|     define_direct_property(vm.names.prototype, &window.cached_web_prototype("Window"), 0); | ||||
|     define_direct_property(vm.names.length, JS::Value(0), JS::Attribute::Configurable); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -388,10 +388,10 @@ | |||
| 
 | ||||
| #define ADD_WINDOW_OBJECT_CONSTRUCTOR_AND_PROTOTYPE(interface_name, constructor_name, prototype_name)                                \ | ||||
|     {                                                                                                                                \ | ||||
|         auto& constructor = ensure_web_constructor<Bindings::constructor_name>(#interface_name);                                     \ | ||||
|         constructor.define_direct_property(vm.names.name, js_string(vm, #interface_name), JS::Attribute::Configurable);              \ | ||||
|         auto& prototype = ensure_web_prototype<Bindings::prototype_name>(#interface_name);                                           \ | ||||
|         auto& constructor = ensure_web_constructor<Bindings::constructor_name>(#interface_name);                                     \ | ||||
|         prototype.define_direct_property(vm.names.constructor, &constructor, JS::Attribute::Writable | JS::Attribute::Configurable); \ | ||||
|         constructor.define_direct_property(vm.names.name, js_string(vm, #interface_name), JS::Attribute::Configurable);              \ | ||||
|     } | ||||
| 
 | ||||
| #define ADD_WINDOW_OBJECT_INTERFACE(interface_name) \ | ||||
|  |  | |||
|  | @ -20,7 +20,7 @@ class WindowPrototype final : public JS::Object { | |||
| 
 | ||||
| public: | ||||
|     explicit WindowPrototype(JS::Realm& realm) | ||||
|         : JS::Object(verify_cast<HTML::Window>(realm.global_object()).ensure_web_prototype<EventTargetPrototype>("EventTarget")) | ||||
|         : JS::Object(verify_cast<HTML::Window>(realm.global_object()).cached_web_prototype("EventTarget")) | ||||
|     { | ||||
|     } | ||||
| }; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSConditionRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSConditionRule.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -14,7 +13,7 @@ namespace Web::CSS { | |||
| CSSConditionRule::CSSConditionRule(HTML::Window& window_object, CSSRuleList& rules) | ||||
|     : CSSGroupingRule(window_object, rules) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSConditionRulePrototype>("CSSConditionRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSConditionRule")); | ||||
| } | ||||
| 
 | ||||
| void CSSConditionRule::for_each_effective_style_rule(Function<void(CSSStyleRule const&)> const& callback) const | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSFontFaceRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSFontFaceRule.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -20,7 +19,7 @@ CSSFontFaceRule::CSSFontFaceRule(HTML::Window& window_object, FontFace&& font_fa | |||
|     : CSSRule(window_object) | ||||
|     , m_font_face(move(font_face)) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSFontFaceRulePrototype>("CSSFontFaceRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSFontFaceRule")); | ||||
| } | ||||
| 
 | ||||
| CSSStyleDeclaration* CSSFontFaceRule::style() | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSGroupingRulePrototype.h> | ||||
| #include <LibWeb/Bindings/MainThreadVM.h> | ||||
| #include <LibWeb/CSS/CSSGroupingRule.h> | ||||
| #include <LibWeb/CSS/CSSRuleList.h> | ||||
|  | @ -17,7 +16,7 @@ CSSGroupingRule::CSSGroupingRule(HTML::Window& window_object, CSSRuleList& rules | |||
|     : CSSRule(window_object) | ||||
|     , m_rules(rules) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSGroupingRulePrototype>("CSSGroupingRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSGroupingRule")); | ||||
|     for (auto& rule : m_rules) | ||||
|         rule.set_parent_rule(this); | ||||
| } | ||||
|  |  | |||
|  | @ -8,7 +8,6 @@ | |||
| 
 | ||||
| #include <AK/Debug.h> | ||||
| #include <AK/URL.h> | ||||
| #include <LibWeb/Bindings/CSSImportRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSImportRule.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -28,7 +27,7 @@ CSSImportRule::CSSImportRule(AK::URL url, DOM::Document& document) | |||
|     , m_url(move(url)) | ||||
|     , m_document(document) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::CSSImportRulePrototype>("CSSImportRule")); | ||||
|     set_prototype(&document.window().cached_web_prototype("CSSImportRule")); | ||||
| 
 | ||||
|     dbgln_if(CSS_LOADER_DEBUG, "CSSImportRule: Loading import URL: {}", m_url); | ||||
|     auto request = LoadRequest::create_for_url_on_page(m_url, document.page()); | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSMediaRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSMediaRule.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -20,7 +19,7 @@ CSSMediaRule::CSSMediaRule(HTML::Window& window_object, MediaList& media, CSSRul | |||
|     : CSSConditionRule(window_object, rules) | ||||
|     , m_media(media) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSMediaRulePrototype>("CSSMediaRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSMediaRule")); | ||||
| } | ||||
| 
 | ||||
| void CSSMediaRule::visit_edges(Cell::Visitor& visitor) | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSRule.h> | ||||
| #include <LibWeb/CSS/CSSStyleSheet.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -14,7 +13,7 @@ | |||
| namespace Web::CSS { | ||||
| 
 | ||||
| CSSRule::CSSRule(HTML::Window& window_object) | ||||
|     : PlatformObject(window_object.ensure_web_prototype<Bindings::CSSRulePrototype>("CSSRule")) | ||||
|     : PlatformObject(window_object.cached_web_prototype("CSSRule")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/TypeCasts.h> | ||||
| #include <LibWeb/Bindings/CSSRuleListPrototype.h> | ||||
| #include <LibWeb/CSS/CSSImportRule.h> | ||||
| #include <LibWeb/CSS/CSSMediaRule.h> | ||||
| #include <LibWeb/CSS/CSSRule.h> | ||||
|  | @ -25,7 +24,7 @@ CSSRuleList* CSSRuleList::create(HTML::Window& window_object, JS::MarkedVector<C | |||
| } | ||||
| 
 | ||||
| CSSRuleList::CSSRuleList(HTML::Window& window_object) | ||||
|     : Bindings::LegacyPlatformObject(window_object.ensure_web_prototype<Bindings::CSSRuleListPrototype>("CSSRuleList")) | ||||
|     : Bindings::LegacyPlatformObject(window_object.cached_web_prototype("CSSRuleList")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSStyleDeclarationPrototype.h> | ||||
| #include <LibWeb/CSS/CSSStyleDeclaration.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -14,7 +13,7 @@ | |||
| namespace Web::CSS { | ||||
| 
 | ||||
| CSSStyleDeclaration::CSSStyleDeclaration(HTML::Window& window_object) | ||||
|     : PlatformObject(window_object.ensure_web_prototype<Bindings::CSSStyleDeclarationPrototype>("CSSStyleDeclaration")) | ||||
|     : PlatformObject(window_object.cached_web_prototype("CSSStyleDeclaration")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSStyleRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSStyleRule.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -21,7 +20,7 @@ CSSStyleRule::CSSStyleRule(HTML::Window& window_object, NonnullRefPtrVector<Sele | |||
|     , m_selectors(move(selectors)) | ||||
|     , m_declaration(declaration) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSStyleRulePrototype>("CSSStyleRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSStyleRule")); | ||||
| } | ||||
| 
 | ||||
| void CSSStyleRule::visit_edges(Cell::Visitor& visitor) | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSStyleSheetPrototype.h> | ||||
| #include <LibWeb/CSS/CSSStyleSheet.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/CSS/StyleSheetList.h> | ||||
|  | @ -22,7 +21,7 @@ CSSStyleSheet::CSSStyleSheet(HTML::Window& window_object, CSSRuleList& rules, Op | |||
|     : StyleSheet(window_object) | ||||
|     , m_rules(&rules) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSStyleSheetPrototype>("CSSStyleSheet")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSStyleSheet")); | ||||
| 
 | ||||
|     if (location.has_value()) | ||||
|         set_location(location->to_string()); | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CSSSupportsRulePrototype.h> | ||||
| #include <LibWeb/CSS/CSSSupportsRule.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -20,7 +19,7 @@ CSSSupportsRule::CSSSupportsRule(HTML::Window& window_object, NonnullRefPtr<Supp | |||
|     : CSSConditionRule(window_object, rules) | ||||
|     , m_supports(move(supports)) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CSSSupportsRulePrototype>("CSSSupportsRule")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CSSSupportsRule")); | ||||
| } | ||||
| 
 | ||||
| String CSSSupportsRule::condition_text() const | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/MediaListPrototype.h> | ||||
| #include <LibWeb/CSS/MediaList.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -18,7 +17,7 @@ MediaList* MediaList::create(HTML::Window& window_object, NonnullRefPtrVector<Me | |||
| } | ||||
| 
 | ||||
| MediaList::MediaList(HTML::Window& window_object, NonnullRefPtrVector<MediaQuery>&& media) | ||||
|     : Bindings::LegacyPlatformObject(window_object.ensure_web_prototype<Bindings::MediaListPrototype>("MediaList")) | ||||
|     : Bindings::LegacyPlatformObject(window_object.cached_web_prototype("MediaList")) | ||||
|     , m_media(move(media)) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/MediaQueryListPrototype.h> | ||||
| #include <LibWeb/CSS/MediaQueryList.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/EventDispatcher.h> | ||||
|  | @ -24,7 +23,7 @@ MediaQueryList::MediaQueryList(DOM::Document& document, NonnullRefPtrVector<Medi | |||
|     , m_document(document) | ||||
|     , m_media(move(media)) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::MediaQueryListPrototype>("MediaQueryList")); | ||||
|     set_prototype(&document.window().cached_web_prototype("MediaQueryList")); | ||||
|     evaluate(); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -25,7 +25,7 @@ MediaQueryListEvent::MediaQueryListEvent(HTML::Window& window_object, FlyString | |||
|     , m_media(event_init.media) | ||||
|     , m_matches(event_init.matches) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::MediaQueryListEventPrototype>("MediaQueryListEvent")); | ||||
|     set_prototype(&window_object.cached_web_prototype("MediaQueryListEvent")); | ||||
| } | ||||
| 
 | ||||
| MediaQueryListEvent::~MediaQueryListEvent() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/StyleSheetPrototype.h> | ||||
| #include <LibWeb/CSS/CSSStyleSheet.h> | ||||
| #include <LibWeb/CSS/StyleSheet.h> | ||||
| #include <LibWeb/DOM/Element.h> | ||||
|  | @ -14,7 +13,7 @@ | |||
| namespace Web::CSS { | ||||
| 
 | ||||
| StyleSheet::StyleSheet(HTML::Window& window_object) | ||||
|     : PlatformObject(window_object.ensure_web_prototype<Bindings::StyleSheetPrototype>("StyleSheet")) | ||||
|     : PlatformObject(window_object.cached_web_prototype("StyleSheet")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ StyleSheetList* StyleSheetList::create(DOM::Document& document) | |||
| } | ||||
| 
 | ||||
| StyleSheetList::StyleSheetList(DOM::Document& document) | ||||
|     : Bindings::LegacyPlatformObject(document.window().ensure_web_prototype<Bindings::StyleSheetListPrototype>("StyleSheetList")) | ||||
|     : Bindings::LegacyPlatformObject(document.window().cached_web_prototype("StyleSheetList")) | ||||
|     , m_document(document) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/AbortControllerPrototype.h> | ||||
| #include <LibWeb/DOM/AbortController.h> | ||||
| #include <LibWeb/DOM/AbortSignal.h> | ||||
| 
 | ||||
|  | @ -21,7 +20,7 @@ AbortController::AbortController(HTML::Window& window, JS::NonnullGCPtr<AbortSig | |||
|     : PlatformObject(window.realm()) | ||||
|     , m_signal(move(signal)) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::AbortControllerPrototype>("AbortController")); | ||||
|     set_prototype(&window.cached_web_prototype("AbortController")); | ||||
| } | ||||
| 
 | ||||
| AbortController::~AbortController() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/AbstractRangePrototype.h> | ||||
| #include <LibWeb/DOM/AbstractRange.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -12,7 +11,7 @@ | |||
| namespace Web::DOM { | ||||
| 
 | ||||
| AbstractRange::AbstractRange(Node& start_container, u32 start_offset, Node& end_container, u32 end_offset) | ||||
|     : Bindings::PlatformObject(start_container.document().window().ensure_web_prototype<Bindings::AbstractRangePrototype>("AbstractRange")) | ||||
|     : Bindings::PlatformObject(start_container.document().window().cached_web_prototype("AbstractRange")) | ||||
|     , m_start_container(start_container) | ||||
|     , m_start_offset(start_offset) | ||||
|     , m_end_container(end_container) | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/AttributePrototype.h> | ||||
| #include <LibWeb/DOM/Attribute.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Element.h> | ||||
|  | @ -24,7 +23,7 @@ Attribute::Attribute(Document& document, FlyString local_name, String value, Ele | |||
|     , m_value(move(value)) | ||||
|     , m_owner_element(owner_element) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::AttributePrototype>("Attribute")); | ||||
|     set_prototype(&window().cached_web_prototype("Attribute")); | ||||
| } | ||||
| 
 | ||||
| void Attribute::visit_edges(Cell::Visitor& visitor) | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CDATASectionPrototype.h> | ||||
| #include <LibWeb/DOM/CDATASection.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::DOM { | |||
| CDATASection::CDATASection(Document& document, String const& data) | ||||
|     : Text(document, NodeType::CDATA_SECTION_NODE, data) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::CDATASectionPrototype>("CDATASection")); | ||||
|     set_prototype(&window().cached_web_prototype("CDATASection")); | ||||
| } | ||||
| 
 | ||||
| CDATASection::~CDATASection() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CustomEventPrototype.h> | ||||
| #include <LibWeb/DOM/CustomEvent.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -24,14 +23,14 @@ CustomEvent* CustomEvent::create_with_global_object(HTML::Window& window_object, | |||
| CustomEvent::CustomEvent(HTML::Window& window_object, FlyString const& event_name) | ||||
|     : Event(window_object, event_name) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CustomEventPrototype>("CustomEvent")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CustomEvent")); | ||||
| } | ||||
| 
 | ||||
| CustomEvent::CustomEvent(HTML::Window& window_object, FlyString const& event_name, CustomEventInit const& event_init) | ||||
|     : Event(window_object, event_name, event_init) | ||||
|     , m_detail(event_init.detail) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CustomEventPrototype>("CustomEvent")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CustomEvent")); | ||||
| } | ||||
| 
 | ||||
| CustomEvent::~CustomEvent() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/DOMImplementationPrototype.h> | ||||
| #include <LibWeb/Bindings/MainThreadVM.h> | ||||
| #include <LibWeb/DOM/DOMImplementation.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -25,7 +24,7 @@ JS::NonnullGCPtr<DOMImplementation> DOMImplementation::create(Document& document | |||
| } | ||||
| 
 | ||||
| DOMImplementation::DOMImplementation(Document& document) | ||||
|     : PlatformObject(document.window().ensure_web_prototype<Bindings::DOMImplementationPrototype>("DOMImplementation")) | ||||
|     : PlatformObject(document.window().cached_web_prototype("DOMImplementation")) | ||||
|     , m_document(document) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -7,7 +7,6 @@ | |||
| 
 | ||||
| #include <AK/CharacterTypes.h> | ||||
| #include <AK/StringBuilder.h> | ||||
| #include <LibWeb/Bindings/DOMTokenListPrototype.h> | ||||
| #include <LibWeb/DOM/DOMException.h> | ||||
| #include <LibWeb/DOM/DOMTokenList.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -62,7 +61,7 @@ DOMTokenList* DOMTokenList::create(Element const& associated_element, FlyString | |||
| 
 | ||||
| // https://dom.spec.whatwg.org/#ref-for-domtokenlist%E2%91%A0%E2%91%A2
 | ||||
| DOMTokenList::DOMTokenList(Element const& associated_element, FlyString associated_attribute) | ||||
|     : Bindings::LegacyPlatformObject(associated_element.document().window().ensure_web_prototype<Bindings::DOMTokenListPrototype>("DOMTokenList")) | ||||
|     : Bindings::LegacyPlatformObject(associated_element.window().cached_web_prototype("DOMTokenList")) | ||||
|     , m_associated_element(associated_element) | ||||
|     , m_associated_attribute(move(associated_attribute)) | ||||
| { | ||||
|  |  | |||
|  | @ -14,7 +14,6 @@ | |||
| #include <LibJS/Interpreter.h> | ||||
| #include <LibJS/Parser.h> | ||||
| #include <LibJS/Runtime/FunctionObject.h> | ||||
| #include <LibWeb/Bindings/DocumentPrototype.h> | ||||
| #include <LibWeb/Bindings/MainThreadVM.h> | ||||
| #include <LibWeb/CSS/MediaQueryList.h> | ||||
| #include <LibWeb/CSS/MediaQueryListEvent.h> | ||||
|  | @ -283,7 +282,7 @@ Document::Document(HTML::Window& window, const AK::URL& url) | |||
|     , m_url(url) | ||||
|     , m_window(window) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::DocumentPrototype>("Document")); | ||||
|     set_prototype(&window.cached_web_prototype("Document")); | ||||
| 
 | ||||
|     HTML::main_thread_event_loop().register_document({}, *this); | ||||
| 
 | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/DocumentFragmentPrototype.h> | ||||
| #include <LibWeb/DOM/DocumentFragment.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::DOM { | |||
| DocumentFragment::DocumentFragment(Document& document) | ||||
|     : ParentNode(document, NodeType::DOCUMENT_FRAGMENT_NODE) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::DocumentFragmentPrototype>("DocumentFragment")); | ||||
|     set_prototype(&window().cached_web_prototype("DocumentFragment")); | ||||
| } | ||||
| 
 | ||||
| void DocumentFragment::visit_edges(Cell::Visitor& visitor) | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/DocumentTypePrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/DocumentType.h> | ||||
| 
 | ||||
|  | @ -18,7 +17,7 @@ JS::NonnullGCPtr<DocumentType> DocumentType::create(Document& document) | |||
| DocumentType::DocumentType(Document& document) | ||||
|     : Node(document, NodeType::DOCUMENT_TYPE_NODE) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::DocumentTypePrototype>("DocumentType")); | ||||
|     set_prototype(&window().cached_web_prototype("DocumentType")); | ||||
| } | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -8,7 +8,6 @@ | |||
| #include <AK/CharacterTypes.h> | ||||
| #include <AK/Debug.h> | ||||
| #include <AK/StringBuilder.h> | ||||
| #include <LibWeb/Bindings/ElementPrototype.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/CSS/PropertyID.h> | ||||
| #include <LibWeb/CSS/ResolvedCSSStyleDeclaration.h> | ||||
|  | @ -48,8 +47,7 @@ Element::Element(Document& document, DOM::QualifiedName qualified_name) | |||
|     , m_qualified_name(move(qualified_name)) | ||||
|     , m_attributes(NamedNodeMap::create(*this)) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::ElementPrototype>("Element")); | ||||
| 
 | ||||
|     set_prototype(&window().cached_web_prototype("Element")); | ||||
|     make_html_uppercased_qualified_name(); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -7,7 +7,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/TypeCasts.h> | ||||
| #include <LibWeb/Bindings/EventPrototype.h> | ||||
| #include <LibWeb/DOM/Event.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/DOM/ShadowRoot.h> | ||||
|  | @ -25,15 +24,15 @@ JS::NonnullGCPtr<Event> Event::create_with_global_object(HTML::Window& window_ob | |||
|     return create(window_object, event_name, event_init); | ||||
| } | ||||
| 
 | ||||
| Event::Event(HTML::Window& window_object, FlyString const& type) | ||||
|     : PlatformObject(window_object.ensure_web_prototype<Bindings::EventPrototype>("Event")) | ||||
| Event::Event(HTML::Window& window, FlyString const& type) | ||||
|     : PlatformObject(window.cached_web_prototype("Event")) | ||||
|     , m_type(type) | ||||
|     , m_initialized(true) | ||||
| { | ||||
| } | ||||
| 
 | ||||
| Event::Event(HTML::Window& window_object, FlyString const& type, EventInit const& event_init) | ||||
|     : PlatformObject(window_object.ensure_web_prototype<Bindings::EventPrototype>("Event")) | ||||
| Event::Event(HTML::Window& window, FlyString const& type, EventInit const& event_init) | ||||
|     : PlatformObject(window.cached_web_prototype("Event")) | ||||
|     , m_type(type) | ||||
|     , m_bubbles(event_init.bubbles) | ||||
|     , m_cancelable(event_init.cancelable) | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLCollectionPrototype.h> | ||||
| #include <LibWeb/DOM/Element.h> | ||||
| #include <LibWeb/DOM/HTMLCollection.h> | ||||
| #include <LibWeb/DOM/ParentNode.h> | ||||
|  | @ -20,7 +19,7 @@ JS::NonnullGCPtr<HTMLCollection> HTMLCollection::create(ParentNode& root, Functi | |||
| } | ||||
| 
 | ||||
| HTMLCollection::HTMLCollection(ParentNode& root, Function<bool(Element const&)> filter) | ||||
|     : LegacyPlatformObject(root.window().ensure_web_prototype<Bindings::HTMLCollectionPrototype>("HTMLCollection")) | ||||
|     : LegacyPlatformObject(root.window().cached_web_prototype("HTMLCollection")) | ||||
|     , m_root(root) | ||||
|     , m_filter(move(filter)) | ||||
| { | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/MainThreadVM.h> | ||||
| #include <LibWeb/Bindings/MutationObserverPrototype.h> | ||||
| #include <LibWeb/DOM/MutationObserver.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -22,7 +21,7 @@ MutationObserver::MutationObserver(HTML::Window& window, JS::GCPtr<Bindings::Cal | |||
|     : PlatformObject(window.realm()) | ||||
|     , m_callback(move(callback)) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::MutationObserverPrototype>("MutationObserver")); | ||||
|     set_prototype(&window.cached_web_prototype("MutationObserver")); | ||||
| 
 | ||||
|     // 1. Set this’s callback to callback.
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/MutationRecordPrototype.h> | ||||
| #include <LibWeb/DOM/MutationRecord.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/DOM/NodeList.h> | ||||
|  | @ -30,7 +29,7 @@ MutationRecord::MutationRecord(HTML::Window& window, FlyString const& type, Node | |||
|     , m_attribute_namespace(attribute_namespace) | ||||
|     , m_old_value(old_value) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::MutationRecordPrototype>("MutationRecord")); | ||||
|     set_prototype(&window.cached_web_prototype("MutationRecord")); | ||||
| } | ||||
| 
 | ||||
| MutationRecord::~MutationRecord() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/NamedNodeMapPrototype.h> | ||||
| #include <LibWeb/DOM/Attribute.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/NamedNodeMap.h> | ||||
|  | @ -20,7 +19,7 @@ JS::NonnullGCPtr<NamedNodeMap> NamedNodeMap::create(Element& element) | |||
| } | ||||
| 
 | ||||
| NamedNodeMap::NamedNodeMap(Element& element) | ||||
|     : Bindings::LegacyPlatformObject(element.document().window().ensure_web_prototype<Bindings::NamedNodeMapPrototype>("NamedNodeMap")) | ||||
|     : Bindings::LegacyPlatformObject(element.window().cached_web_prototype("NamedNodeMap")) | ||||
|     , m_element(element) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
| 
 | ||||
| #include <LibWeb/Bindings/DOMExceptionWrapper.h> | ||||
| #include <LibWeb/Bindings/IDLAbstractOperations.h> | ||||
| #include <LibWeb/Bindings/NodeIteratorPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/DOM/NodeIterator.h> | ||||
|  | @ -14,7 +13,7 @@ | |||
| namespace Web::DOM { | ||||
| 
 | ||||
| NodeIterator::NodeIterator(Node& root) | ||||
|     : PlatformObject(root.document().window().ensure_web_prototype<Bindings::NodeIteratorPrototype>("NodeIterator")) | ||||
|     : PlatformObject(root.window().cached_web_prototype("NodeIterator")) | ||||
|     , m_root(root) | ||||
|     , m_reference({ root }) | ||||
| { | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/NodeListPrototype.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/DOM/NodeList.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -12,7 +11,7 @@ | |||
| namespace Web::DOM { | ||||
| 
 | ||||
| NodeList::NodeList(HTML::Window& window) | ||||
|     : LegacyPlatformObject(window.ensure_web_prototype<Bindings::NodeListPrototype>("NodeList")) | ||||
|     : LegacyPlatformObject(window.cached_web_prototype("NodeList")) | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/RangePrototype.h> | ||||
| #include <LibWeb/DOM/Comment.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/DocumentFragment.h> | ||||
|  | @ -50,13 +49,13 @@ JS::NonnullGCPtr<Range> Range::create_with_global_object(HTML::Window& window) | |||
| Range::Range(Document& document) | ||||
|     : Range(document, 0, document, 0) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::RangePrototype>("Range")); | ||||
|     set_prototype(&document.window().cached_web_prototype("Range")); | ||||
| } | ||||
| 
 | ||||
| Range::Range(Node& start_container, u32 start_offset, Node& end_container, u32 end_offset) | ||||
|     : AbstractRange(start_container, start_offset, end_container, end_offset) | ||||
| { | ||||
|     set_prototype(&start_container.document().window().ensure_web_prototype<Bindings::RangePrototype>("Range")); | ||||
|     set_prototype(&start_container.window().cached_web_prototype("Range")); | ||||
|     live_ranges().set(this); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/TypeCasts.h> | ||||
| #include <LibWeb/Bindings/StaticRangePrototype.h> | ||||
| #include <LibWeb/DOM/Attribute.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/DocumentType.h> | ||||
|  | @ -18,7 +17,7 @@ namespace Web::DOM { | |||
| StaticRange::StaticRange(Node& start_container, u32 start_offset, Node& end_container, u32 end_offset) | ||||
|     : AbstractRange(start_container, start_offset, end_container, end_offset) | ||||
| { | ||||
|     set_prototype(&start_container.document().window().ensure_web_prototype<Bindings::StaticRangePrototype>("StaticRange")); | ||||
|     set_prototype(&start_container.document().window().cached_web_prototype("StaticRange")); | ||||
| } | ||||
| 
 | ||||
| StaticRange::~StaticRange() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/TextPrototype.h> | ||||
| #include <LibWeb/DOM/Range.h> | ||||
| #include <LibWeb/DOM/Text.h> | ||||
| #include <LibWeb/HTML/HTMLInputElement.h> | ||||
|  | @ -16,13 +15,13 @@ namespace Web::DOM { | |||
| Text::Text(Document& document, String const& data) | ||||
|     : CharacterData(document, NodeType::TEXT_NODE, data) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::TextPrototype>("Text")); | ||||
|     set_prototype(&window().cached_web_prototype("Text")); | ||||
| } | ||||
| 
 | ||||
| Text::Text(Document& document, NodeType type, String const& data) | ||||
|     : CharacterData(document, type, data) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::TextPrototype>("Text")); | ||||
|     set_prototype(&window().cached_web_prototype("Text")); | ||||
| } | ||||
| 
 | ||||
| void Text::visit_edges(Cell::Visitor& visitor) | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
| 
 | ||||
| #include <LibWeb/Bindings/DOMExceptionWrapper.h> | ||||
| #include <LibWeb/Bindings/IDLAbstractOperations.h> | ||||
| #include <LibWeb/Bindings/TreeWalkerPrototype.h> | ||||
| #include <LibWeb/Bindings/Wrapper.h> | ||||
| #include <LibWeb/DOM/DOMException.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -17,7 +16,7 @@ | |||
| namespace Web::DOM { | ||||
| 
 | ||||
| TreeWalker::TreeWalker(Node& root) | ||||
|     : PlatformObject(root.document().window().ensure_web_prototype<Bindings::TreeWalkerPrototype>("TreeWalker")) | ||||
|     : PlatformObject(root.window().cached_web_prototype("TreeWalker")) | ||||
|     , m_root(root) | ||||
|     , m_current(root) | ||||
| { | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/XMLSerializerPrototype.h> | ||||
| #include <LibWeb/DOM/CDATASection.h> | ||||
| #include <LibWeb/DOM/Comment.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -29,7 +28,7 @@ JS::NonnullGCPtr<XMLSerializer> XMLSerializer::create_with_global_object(HTML::W | |||
| XMLSerializer::XMLSerializer(HTML::Window& window) | ||||
|     : PlatformObject(window.realm()) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::XMLSerializerPrototype>("XMLSerializer")); | ||||
|     set_prototype(&window.cached_web_prototype("XMLSerializer")); | ||||
| } | ||||
| 
 | ||||
| XMLSerializer::~XMLSerializer() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/QuickSort.h> | ||||
| #include <LibWeb/Bindings/CanvasGradientPrototype.h> | ||||
| #include <LibWeb/DOM/ExceptionOr.h> | ||||
| #include <LibWeb/HTML/CanvasGradient.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -44,7 +43,7 @@ CanvasGradient::CanvasGradient(HTML::Window& window, Type type) | |||
|     : PlatformObject(window.realm()) | ||||
|     , m_type(type) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::CanvasGradientPrototype>("CanvasGradient")); | ||||
|     set_prototype(&window.cached_web_prototype("CanvasGradient")); | ||||
| } | ||||
| 
 | ||||
| CanvasGradient::~CanvasGradient() = default; | ||||
|  |  | |||
|  | @ -10,7 +10,6 @@ | |||
| #include <LibGfx/Painter.h> | ||||
| #include <LibGfx/Quad.h> | ||||
| #include <LibGfx/Rect.h> | ||||
| #include <LibWeb/Bindings/CanvasRenderingContext2DPrototype.h> | ||||
| #include <LibWeb/DOM/ExceptionOr.h> | ||||
| #include <LibWeb/HTML/CanvasRenderingContext2D.h> | ||||
| #include <LibWeb/HTML/HTMLCanvasElement.h> | ||||
|  | @ -32,7 +31,7 @@ CanvasRenderingContext2D::CanvasRenderingContext2D(HTML::Window& window, HTMLCan | |||
|     : PlatformObject(window.realm()) | ||||
|     , m_element(element) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::CanvasRenderingContext2DPrototype>("CanvasRenderingContext2D")); | ||||
|     set_prototype(&window.cached_web_prototype("CanvasRenderingContext2D")); | ||||
| } | ||||
| 
 | ||||
| CanvasRenderingContext2D::~CanvasRenderingContext2D() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/CloseEventPrototype.h> | ||||
| #include <LibWeb/HTML/CloseEvent.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -26,7 +25,7 @@ CloseEvent::CloseEvent(HTML::Window& window_object, FlyString const& event_name, | |||
|     , m_code(event_init.code) | ||||
|     , m_reason(event_init.reason) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::CloseEventPrototype>("CloseEvent")); | ||||
|     set_prototype(&window_object.cached_web_prototype("CloseEvent")); | ||||
| } | ||||
| 
 | ||||
| CloseEvent::~CloseEvent() = default; | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ DOM::ExceptionOr<JS::NonnullGCPtr<DOMParser>> DOMParser::create_with_global_obje | |||
| DOMParser::DOMParser(HTML::Window& window) | ||||
|     : PlatformObject(window.realm()) | ||||
| { | ||||
|     set_prototype(&window.ensure_web_prototype<Bindings::DOMParserPrototype>("DOMParser")); | ||||
|     set_prototype(&window.cached_web_prototype("DOMParser")); | ||||
| } | ||||
| 
 | ||||
| DOMParser::~DOMParser() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/CharacterTypes.h> | ||||
| #include <LibWeb/Bindings/DOMStringMapPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Element.h> | ||||
| #include <LibWeb/HTML/DOMStringMap.h> | ||||
|  | @ -20,7 +19,7 @@ JS::NonnullGCPtr<DOMStringMap> DOMStringMap::create(DOM::Element& element) | |||
| } | ||||
| 
 | ||||
| DOMStringMap::DOMStringMap(DOM::Element& element) | ||||
|     : PlatformObject(element.document().window().ensure_web_prototype<Bindings::DOMStringMapPrototype>("DOMStringMap")) | ||||
|     : PlatformObject(element.window().cached_web_prototype("DOMStringMap")) | ||||
|     , m_associated_element(element) | ||||
| { | ||||
| } | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/ErrorEventPrototype.h> | ||||
| #include <LibWeb/HTML/ErrorEvent.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -28,7 +27,7 @@ ErrorEvent::ErrorEvent(HTML::Window& window_object, FlyString const& event_name, | |||
|     , m_colno(event_init.colno) | ||||
|     , m_error(event_init.error) | ||||
| { | ||||
|     set_prototype(&window_object.ensure_web_prototype<Bindings::ErrorEventPrototype>("ErrorEvent")); | ||||
|     set_prototype(&window_object.cached_web_prototype("ErrorEvent")); | ||||
| } | ||||
| 
 | ||||
| ErrorEvent::~ErrorEvent() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLAnchorElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLAnchorElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLAnchorElement::HTMLAnchorElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLAnchorElementPrototype>("HTMLAnchorElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLAnchorElement")); | ||||
| 
 | ||||
|     activation_behavior = [this](auto const& event) { | ||||
|         run_activation_behavior(event); | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLAreaElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLAreaElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLAreaElement::HTMLAreaElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLAreaElementPrototype>("HTMLAreaElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLAreaElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLAreaElement::~HTMLAreaElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLAudioElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLAudioElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLAudioElement::HTMLAudioElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLMediaElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLAudioElementPrototype>("HTMLAudioElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLAudioElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLAudioElement::~HTMLAudioElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLBRElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLBRElement.h> | ||||
| #include <LibWeb/Layout/BreakNode.h> | ||||
|  | @ -14,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLBRElement::HTMLBRElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLBRElementPrototype>("HTMLBRElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLBRElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLBRElement::~HTMLBRElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLBaseElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLBaseElement.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLBaseElement::HTMLBaseElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLBaseElementPrototype>("HTMLBaseElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLBaseElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLBaseElement::~HTMLBaseElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLBodyElementPrototype.h> | ||||
| #include <LibWeb/CSS/StyleProperties.h> | ||||
| #include <LibWeb/CSS/StyleValue.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -16,7 +15,7 @@ namespace Web::HTML { | |||
| HTMLBodyElement::HTMLBodyElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLBodyElementPrototype>("HTMLBodyElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLBodyElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLBodyElement::~HTMLBodyElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLButtonElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLButtonElement.h> | ||||
| #include <LibWeb/HTML/HTMLFormElement.h> | ||||
|  | @ -14,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLButtonElement::HTMLButtonElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLButtonElementPrototype>("HTMLButtonElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLButtonElement")); | ||||
| 
 | ||||
|     // https://html.spec.whatwg.org/multipage/form-elements.html#the-button-element:activation-behaviour
 | ||||
|     activation_behavior = [this](auto&) { | ||||
|  |  | |||
|  | @ -8,7 +8,6 @@ | |||
| #include <AK/Checked.h> | ||||
| #include <LibGfx/Bitmap.h> | ||||
| #include <LibGfx/PNGWriter.h> | ||||
| #include <LibWeb/Bindings/HTMLCanvasElementPrototype.h> | ||||
| #include <LibWeb/CSS/StyleComputer.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/CanvasRenderingContext2D.h> | ||||
|  | @ -22,7 +21,7 @@ static constexpr auto max_canvas_area = 16384 * 16384; | |||
| HTMLCanvasElement::HTMLCanvasElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::HTMLCanvasElementPrototype>("HTMLCanvasElement")); | ||||
|     set_prototype(&document.window().cached_web_prototype("HTMLCanvasElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLCanvasElement::~HTMLCanvasElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDListElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDListElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDListElement::HTMLDListElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDListElementPrototype>("HTMLDListElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDListElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDListElement::~HTMLDListElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDataElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDataElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDataElement::HTMLDataElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDataElementPrototype>("HTMLDataElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDataElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDataElement::~HTMLDataElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDataListElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDataListElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDataListElement::HTMLDataListElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDataListElementPrototype>("HTMLDataListElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDataListElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDataListElement::~HTMLDataListElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDetailsElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDetailsElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDetailsElement::HTMLDetailsElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDetailsElementPrototype>("HTMLDetailsElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDetailsElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDetailsElement::~HTMLDetailsElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDialogElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDialogElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDialogElement::HTMLDialogElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDialogElementPrototype>("HTMLDialogElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDialogElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDialogElement::~HTMLDialogElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDirectoryElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDirectoryElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDirectoryElement::HTMLDirectoryElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDirectoryElementPrototype>("HTMLDirectoryElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDirectoryElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDirectoryElement::~HTMLDirectoryElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLDivElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLDivElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLDivElement::HTMLDivElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLDivElementPrototype>("HTMLDivElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLDivElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLDivElement::~HTMLDivElement() = default; | ||||
|  |  | |||
|  | @ -7,7 +7,6 @@ | |||
| #include <AK/StringBuilder.h> | ||||
| #include <LibJS/Interpreter.h> | ||||
| #include <LibJS/Parser.h> | ||||
| #include <LibWeb/Bindings/HTMLElementPrototype.h> | ||||
| #include <LibWeb/DOM/DOMException.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/ExceptionOr.h> | ||||
|  | @ -33,7 +32,7 @@ HTMLElement::HTMLElement(DOM::Document& document, DOM::QualifiedName qualified_n | |||
|     : Element(document, move(qualified_name)) | ||||
|     , m_dataset(DOMStringMap::create(*this)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLElementPrototype>("HTMLElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLElement::~HTMLElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLEmbedElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLEmbedElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLEmbedElement::HTMLEmbedElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLEmbedElementPrototype>("HTMLEmbedElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLEmbedElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLEmbedElement::~HTMLEmbedElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLFieldSetElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLFieldSetElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLFieldSetElement::HTMLFieldSetElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLFieldSetElementPrototype>("HTMLFieldSetElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLFieldSetElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLFieldSetElement::~HTMLFieldSetElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLFontElementPrototype.h> | ||||
| #include <LibWeb/CSS/StyleProperties.h> | ||||
| #include <LibWeb/CSS/StyleValue.h> | ||||
| #include <LibWeb/HTML/HTMLFontElement.h> | ||||
|  | @ -15,7 +14,7 @@ namespace Web::HTML { | |||
| HTMLFontElement::HTMLFontElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLFontElementPrototype>("HTMLFontElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLFontElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLFontElement::~HTMLFontElement() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/StringBuilder.h> | ||||
| #include <LibWeb/Bindings/HTMLFormElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/BrowsingContext.h> | ||||
| #include <LibWeb/HTML/EventNames.h> | ||||
|  | @ -26,7 +25,7 @@ namespace Web::HTML { | |||
| HTMLFormElement::HTMLFormElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLFormElementPrototype>("HTMLFormElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLFormElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLFormElement::~HTMLFormElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLFrameElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLFrameElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLFrameElement::HTMLFrameElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLFrameElementPrototype>("HTMLFrameElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLFrameElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLFrameElement::~HTMLFrameElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLFrameSetElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLFrameSetElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
|  | @ -14,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLFrameSetElement::HTMLFrameSetElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLFrameSetElementPrototype>("HTMLFrameSetElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLFrameSetElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLFrameSetElement::~HTMLFrameSetElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLHRElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLHRElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLHRElement::HTMLHRElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLHRElementPrototype>("HTMLHRElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLHRElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLHRElement::~HTMLHRElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLHeadElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLHeadElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLHeadElement::HTMLHeadElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLHeadElementPrototype>("HTMLHeadElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLHeadElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLHeadElement::~HTMLHeadElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLHeadingElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLHeadingElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLHeadingElement::HTMLHeadingElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLHeadingElementPrototype>("HTMLHeadingElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLHeadingElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLHeadingElement::~HTMLHeadingElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLHtmlElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLHtmlElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLHtmlElement::HTMLHtmlElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLHtmlElementPrototype>("HTMLHtmlElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLHtmlElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLHtmlElement::~HTMLHtmlElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLIFrameElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Event.h> | ||||
| #include <LibWeb/HTML/BrowsingContext.h> | ||||
|  | @ -17,7 +16,7 @@ namespace Web::HTML { | |||
| HTMLIFrameElement::HTMLIFrameElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : BrowsingContextContainer(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&document.window().ensure_web_prototype<Bindings::HTMLIFrameElementPrototype>("HTMLIFrameElement")); | ||||
|     set_prototype(&document.window().cached_web_prototype("HTMLIFrameElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLIFrameElement::~HTMLIFrameElement() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <LibGfx/Bitmap.h> | ||||
| #include <LibWeb/Bindings/HTMLImageElementPrototype.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/CSS/StyleComputer.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
|  | @ -23,7 +22,7 @@ HTMLImageElement::HTMLImageElement(DOM::Document& document, DOM::QualifiedName q | |||
|     : HTMLElement(document, move(qualified_name)) | ||||
|     , m_image_loader(*this) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLImageElementPrototype>("HTMLImageElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLImageElement")); | ||||
| 
 | ||||
|     m_image_loader.on_load = [this] { | ||||
|         set_needs_style_update(true); | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLInputElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Event.h> | ||||
| #include <LibWeb/DOM/ShadowRoot.h> | ||||
|  | @ -25,7 +24,7 @@ HTMLInputElement::HTMLInputElement(DOM::Document& document, DOM::QualifiedName q | |||
|     : HTMLElement(document, move(qualified_name)) | ||||
|     , m_value(String::empty()) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLInputElementPrototype>("HTMLInputElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLInputElement")); | ||||
| 
 | ||||
|     activation_behavior = [this](auto&) { | ||||
|         // The activation behavior for input elements are these steps:
 | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLLIElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLLIElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLLIElement::HTMLLIElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLLIElementPrototype>("HTMLLIElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLLIElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLLIElement::~HTMLLIElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLLabelElementPrototype.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLLabelElement.h> | ||||
| #include <LibWeb/Layout/Label.h> | ||||
|  | @ -14,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLLabelElement::HTMLLabelElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLLabelElementPrototype>("HTMLLabelElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLLabelElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLLabelElement::~HTMLLabelElement() = default; | ||||
|  |  | |||
|  | @ -13,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLLegendElement::HTMLLegendElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLLegendElementPrototype>("HTMLLegendElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLLegendElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLLegendElement::~HTMLLegendElement() = default; | ||||
|  |  | |||
|  | @ -9,7 +9,6 @@ | |||
| #include <AK/ByteBuffer.h> | ||||
| #include <AK/Debug.h> | ||||
| #include <AK/URL.h> | ||||
| #include <LibWeb/Bindings/HTMLLinkElementPrototype.h> | ||||
| #include <LibWeb/CSS/Parser/Parser.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/HTML/HTMLLinkElement.h> | ||||
|  | @ -22,7 +21,7 @@ namespace Web::HTML { | |||
| HTMLLinkElement::HTMLLinkElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLLinkElementPrototype>("HTMLLinkElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLLinkElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLLinkElement::~HTMLLinkElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLMapElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLMapElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLMapElement::HTMLMapElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMapElementPrototype>("HTMLMapElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMapElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMapElement::~HTMLMapElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLMarqueeElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLMarqueeElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLMarqueeElement::HTMLMarqueeElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMarqueeElementPrototype>("HTMLMarqueeElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMarqueeElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMarqueeElement::~HTMLMarqueeElement() = default; | ||||
|  |  | |||
|  | @ -13,7 +13,7 @@ namespace Web::HTML { | |||
| HTMLMediaElement::HTMLMediaElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMediaElementPrototype>("HTMLMediaElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMediaElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMediaElement::~HTMLMediaElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLMenuElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLMenuElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLMenuElement::HTMLMenuElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMenuElementPrototype>("HTMLMenuElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMenuElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMenuElement::~HTMLMenuElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLMetaElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLMetaElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLMetaElement::HTMLMetaElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMetaElementPrototype>("HTMLMetaElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMetaElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMetaElement::~HTMLMetaElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLMeterElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLMeterElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLMeterElement::HTMLMeterElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLMeterElementPrototype>("HTMLMeterElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLMeterElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLMeterElement::~HTMLMeterElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLModElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLModElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLModElement::HTMLModElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLModElementPrototype>("HTMLModElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLModElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLModElement::~HTMLModElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLOListElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLOListElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLOListElement::HTMLOListElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLOListElementPrototype>("HTMLOListElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLOListElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLOListElement::~HTMLOListElement() = default; | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <LibGfx/Bitmap.h> | ||||
| #include <LibWeb/Bindings/HTMLObjectElementPrototype.h> | ||||
| #include <LibWeb/CSS/StyleComputer.h> | ||||
| #include <LibWeb/DOM/Document.h> | ||||
| #include <LibWeb/DOM/Event.h> | ||||
|  | @ -20,7 +19,7 @@ namespace Web::HTML { | |||
| HTMLObjectElement::HTMLObjectElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : BrowsingContextContainer(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLObjectElementPrototype>("HTMLObjectElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLObjectElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLObjectElement::~HTMLObjectElement() = default; | ||||
|  |  | |||
|  | @ -4,7 +4,6 @@ | |||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
| 
 | ||||
| #include <LibWeb/Bindings/HTMLOptGroupElementPrototype.h> | ||||
| #include <LibWeb/HTML/HTMLOptGroupElement.h> | ||||
| #include <LibWeb/HTML/Window.h> | ||||
| 
 | ||||
|  | @ -13,7 +12,7 @@ namespace Web::HTML { | |||
| HTMLOptGroupElement::HTMLOptGroupElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLOptGroupElementPrototype>("HTMLOptGroupElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLOptGroupElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLOptGroupElement::~HTMLOptGroupElement() = default; | ||||
|  |  | |||
|  | @ -6,7 +6,6 @@ | |||
|  */ | ||||
| 
 | ||||
| #include <AK/StringBuilder.h> | ||||
| #include <LibWeb/Bindings/HTMLOptionElementPrototype.h> | ||||
| #include <LibWeb/DOM/Node.h> | ||||
| #include <LibWeb/DOM/Text.h> | ||||
| #include <LibWeb/HTML/HTMLOptionElement.h> | ||||
|  | @ -20,7 +19,7 @@ namespace Web::HTML { | |||
| HTMLOptionElement::HTMLOptionElement(DOM::Document& document, DOM::QualifiedName qualified_name) | ||||
|     : HTMLElement(document, move(qualified_name)) | ||||
| { | ||||
|     set_prototype(&window().ensure_web_prototype<Bindings::HTMLOptionElementPrototype>("HTMLOptionElement")); | ||||
|     set_prototype(&window().cached_web_prototype("HTMLOptionElement")); | ||||
| } | ||||
| 
 | ||||
| HTMLOptionElement::~HTMLOptionElement() = default; | ||||
|  |  | |||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling