/* * Copyright (c) 2023, Aliaksandr Kalenik * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include namespace Web::HTML { class RemoteBrowsingContext final : public AbstractBrowsingContext , public Weakable { JS_CELL(RemoteBrowsingContext, AbstractBrowsingContext); public: static JS::NonnullGCPtr create_a_new_remote_browsing_context(String handle); virtual HTML::WindowProxy* window_proxy() override; virtual HTML::WindowProxy const* window_proxy() const override; virtual WebIDL::ExceptionOr navigate( JS::NonnullGCPtr, BrowsingContext&, bool, HistoryHandlingBehavior, Optional, DeprecatedString, Optional, Function)>) override { return {}; }; virtual String const& window_handle() const override { return m_window_handle; } virtual void set_window_handle(String handle) override { m_window_handle = handle; }; private: explicit RemoteBrowsingContext(String); String m_window_handle; }; }