mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-25 17:25:08 +02:00
Also push the onconnect event for the initial connection. This still doesn't properly handle sending an onconnect event to a pre-existing SharedWorkerGlobalScope with the same name for the same origin, but it does give us a lot of WPT passes in the SharedWorker category.
35 lines
941 B
C++
35 lines
941 B
C++
/*
|
|
* Copyright (c) 2023, Andrew Kaster <akaster@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/RefCounted.h>
|
|
#include <LibURL/URL.h>
|
|
#include <LibWeb/Bindings/MainThreadVM.h>
|
|
#include <LibWeb/Bindings/WorkerPrototype.h>
|
|
#include <LibWeb/Forward.h>
|
|
#include <LibWeb/HTML/Scripting/SerializedEnvironmentSettingsObject.h>
|
|
#include <LibWeb/HTML/StructuredSerialize.h>
|
|
|
|
namespace WebWorker {
|
|
|
|
class WorkerHost : public RefCounted<WorkerHost> {
|
|
public:
|
|
explicit WorkerHost(URL::URL url, Web::Bindings::WorkerType type, String name);
|
|
~WorkerHost();
|
|
|
|
void run(GC::Ref<Web::Page>, Web::HTML::TransferDataHolder message_port_data, Web::HTML::SerializedEnvironmentSettingsObject const&, Web::Bindings::RequestCredentials, bool is_shared);
|
|
|
|
private:
|
|
GC::Root<Web::HTML::WorkerDebugConsoleClient> m_console;
|
|
|
|
URL::URL m_url;
|
|
Web::Bindings::WorkerType m_type;
|
|
String m_name;
|
|
};
|
|
|
|
}
|