/* * Copyright (c) 2021, Andreas Kling * Copyright (c) 2021, Luke Wilde * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include namespace Web::Bindings { struct WebEngineCustomData final : public JS::VM::CustomData { virtual ~WebEngineCustomData() override = default; HTML::EventLoop event_loop; }; struct WebEngineCustomJobCallbackData final : public JS::JobCallback::CustomData { WebEngineCustomJobCallbackData(HTML::EnvironmentSettingsObject& incumbent_settings, OwnPtr active_script_context) : incumbent_settings(incumbent_settings) , active_script_context(move(active_script_context)) { } virtual ~WebEngineCustomJobCallbackData() override = default; HTML::EnvironmentSettingsObject& incumbent_settings; OwnPtr active_script_context; }; HTML::ClassicScript* active_script(); JS::VM& main_thread_vm(); }