mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 01:35:08 +02:00
LibWeb: Remove unecessary dependence on Window from assorted classes
These classes only needed Window to get at its realm. Pass a realm directly to construct Crypto, Encoding, HRT, IntersectionObserver, NavigationTiming, Page, RequestIdleCallback, Selection, Streams, URL, and XML classes.
This commit is contained in:
committed by
Linus Groh
parent
4878a18ee7
commit
4bb6345b2f
Notes:
sideshowbarker
2024-07-17 06:28:02 +09:00
Author: https://github.com/ADKaster Commit: https://github.com/SerenityOS/serenity/commit/4bb6345b2f Pull-request: https://github.com/SerenityOS/serenity/pull/15349 Reviewed-by: https://github.com/linusg ✅
@@ -4,24 +4,24 @@
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <LibWeb/Bindings/Intrinsics.h>
|
||||
#include <LibWeb/DOM/Element.h>
|
||||
#include <LibWeb/HTML/Window.h>
|
||||
#include <LibWeb/ResizeObserver/ResizeObserver.h>
|
||||
|
||||
namespace Web::ResizeObserver {
|
||||
|
||||
// https://drafts.csswg.org/resize-observer/#dom-resizeobserver-resizeobserver
|
||||
JS::NonnullGCPtr<ResizeObserver> ResizeObserver::create_with_global_object(HTML::Window& window, WebIDL::CallbackType* callback)
|
||||
JS::NonnullGCPtr<ResizeObserver> ResizeObserver::construct_impl(JS::Realm& realm, WebIDL::CallbackType* callback)
|
||||
{
|
||||
// FIXME: Implement
|
||||
(void)callback;
|
||||
return *window.heap().allocate<ResizeObserver>(window.realm(), window);
|
||||
return *realm.heap().allocate<ResizeObserver>(realm, realm);
|
||||
}
|
||||
|
||||
ResizeObserver::ResizeObserver(HTML::Window& window)
|
||||
: PlatformObject(window.realm())
|
||||
ResizeObserver::ResizeObserver(JS::Realm& realm)
|
||||
: PlatformObject(realm)
|
||||
{
|
||||
set_prototype(&window.cached_web_prototype("ResizeObserver"));
|
||||
set_prototype(&Bindings::cached_web_prototype(realm, "ResizeObserver"));
|
||||
}
|
||||
|
||||
ResizeObserver::~ResizeObserver() = default;
|
||||
|
||||
@@ -19,7 +19,7 @@ class ResizeObserver : public Bindings::PlatformObject {
|
||||
WEB_PLATFORM_OBJECT(ResizeObserver, Bindings::PlatformObject);
|
||||
|
||||
public:
|
||||
static JS::NonnullGCPtr<ResizeObserver> create_with_global_object(HTML::Window&, WebIDL::CallbackType* callback);
|
||||
static JS::NonnullGCPtr<ResizeObserver> construct_impl(JS::Realm&, WebIDL::CallbackType* callback);
|
||||
|
||||
virtual ~ResizeObserver() override;
|
||||
|
||||
@@ -28,7 +28,7 @@ public:
|
||||
void disconnect();
|
||||
|
||||
private:
|
||||
explicit ResizeObserver(HTML::Window&);
|
||||
explicit ResizeObserver(JS::Realm&);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user