/* * Copyright (c) 2025, Tim Flynn * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include #include #include #include #include #include namespace WebContent { class WebUIConnection final : public IPC::ConnectionFromClient { public: static ErrorOr> connect(IPC::File, Web::DOM::Document&); virtual ~WebUIConnection() override; void visit_edges(JS::Cell::Visitor&); void received_message_from_web_ui(String const& name, JS::Value data); private: WebUIConnection(NonnullOwnPtr, Web::DOM::Document&); virtual void die() override { } virtual void send_message(String name, JsonValue data) override; GC::Ref m_document; }; }