diff --git a/Userland/Libraries/LibWeb/HTML/Window.h b/Userland/Libraries/LibWeb/HTML/Window.h index 2ead4a0299..067bf5184e 100644 --- a/Userland/Libraries/LibWeb/HTML/Window.h +++ b/Userland/Libraries/LibWeb/HTML/Window.h @@ -71,6 +71,9 @@ public: virtual Bindings::PlatformObject& this_impl() override { return *this; } virtual Bindings::PlatformObject const& this_impl() const override { return *this; } + // ^JS::Object + virtual JS::ThrowCompletionOr internal_set_prototype_of(JS::Object* prototype) override; + Page* page(); Page const* page() const; @@ -127,6 +130,9 @@ public: Vector> pdf_viewer_plugin_objects(); Vector> pdf_viewer_mime_type_objects(); + CrossOriginPropertyDescriptorMap const& cross_origin_property_descriptor_map() const { return m_cross_origin_property_descriptor_map; } + CrossOriginPropertyDescriptorMap& cross_origin_property_descriptor_map() { return m_cross_origin_property_descriptor_map; } + // JS API functions JS::NonnullGCPtr window() const; JS::NonnullGCPtr self() const; @@ -224,6 +230,7 @@ private: JS::GCPtr m_crypto; JS::GCPtr m_screen; JS::GCPtr m_navigator; + JS::GCPtr m_location; AnimationFrameCallbackDriver m_animation_frame_callback_driver; @@ -240,24 +247,15 @@ private: // https://html.spec.whatwg.org/multipage/system-state.html#pdf-viewer-mime-type-objects Vector> m_pdf_viewer_mime_type_objects; -public: - virtual JS::ThrowCompletionOr internal_set_prototype_of(JS::Object* prototype) override; + // [[CrossOriginPropertyDescriptorMap]], https://html.spec.whatwg.org/multipage/browsers.html#crossoriginpropertydescriptormap + CrossOriginPropertyDescriptorMap m_cross_origin_property_descriptor_map; - CrossOriginPropertyDescriptorMap const& cross_origin_property_descriptor_map() const { return m_cross_origin_property_descriptor_map; } - CrossOriginPropertyDescriptorMap& cross_origin_property_descriptor_map() { return m_cross_origin_property_descriptor_map; } - -private: JS_DECLARE_NATIVE_FUNCTION(location_setter); JS_DECLARE_NATIVE_FUNCTION(set_interval); JS_DECLARE_NATIVE_FUNCTION(set_timeout); JS_DECLARE_NATIVE_FUNCTION(clear_interval); JS_DECLARE_NATIVE_FUNCTION(clear_timeout); - - HTML::Location* m_location { nullptr }; - - // [[CrossOriginPropertyDescriptorMap]], https://html.spec.whatwg.org/multipage/browsers.html#crossoriginpropertydescriptormap - CrossOriginPropertyDescriptorMap m_cross_origin_property_descriptor_map; }; void run_animation_frame_callbacks(DOM::Document&, double now);