diff --git a/Userland/Libraries/LibProtocol/WebSocketClient.h b/Userland/Libraries/LibProtocol/WebSocketClient.h index 4eee5528be..4eb94dcde3 100644 --- a/Userland/Libraries/LibProtocol/WebSocketClient.h +++ b/Userland/Libraries/LibProtocol/WebSocketClient.h @@ -21,6 +21,8 @@ class WebSocketClient final IPC_CLIENT_CONNECTION(WebSocketClient, "/tmp/session/%sid/portal/websocket"sv) public: + explicit WebSocketClient(NonnullOwnPtr); + RefPtr connect(const URL&, DeprecatedString const& origin = {}, Vector const& protocols = {}, Vector const& extensions = {}, HashMap const& request_headers = {}); u32 ready_state(Badge, WebSocket&); @@ -30,8 +32,6 @@ public: bool set_certificate(Badge, WebSocket&, DeprecatedString, DeprecatedString); private: - WebSocketClient(NonnullOwnPtr); - virtual void connected(i32) override; virtual void received(i32, bool, ByteBuffer const&) override; virtual void errored(i32, i32) override; diff --git a/Userland/Libraries/LibWebView/WebSocketClientAdapter.cpp b/Userland/Libraries/LibWebView/WebSocketClientAdapter.cpp index 763049d9f5..9c61b1ebee 100644 --- a/Userland/Libraries/LibWebView/WebSocketClientAdapter.cpp +++ b/Userland/Libraries/LibWebView/WebSocketClientAdapter.cpp @@ -107,6 +107,11 @@ void WebSocketClientSocketAdapter::close(u16 code, DeprecatedString reason) m_websocket->close(code, reason); } +ErrorOr> WebSocketClientManagerAdapter::try_create(NonnullRefPtr websocket_client) +{ + return adopt_nonnull_ref_or_enomem(new (nothrow) WebSocketClientManagerAdapter(move(websocket_client))); +} + ErrorOr> WebSocketClientManagerAdapter::try_create() { auto websocket_client = TRY(Protocol::WebSocketClient::try_create()); diff --git a/Userland/Libraries/LibWebView/WebSocketClientAdapter.h b/Userland/Libraries/LibWebView/WebSocketClientAdapter.h index 2a1004d71b..5ae5590ff1 100644 --- a/Userland/Libraries/LibWebView/WebSocketClientAdapter.h +++ b/Userland/Libraries/LibWebView/WebSocketClientAdapter.h @@ -40,6 +40,7 @@ private: class WebSocketClientManagerAdapter : public Web::WebSockets::WebSocketClientManager { public: + static ErrorOr> try_create(NonnullRefPtr); static ErrorOr> try_create(); virtual ~WebSocketClientManagerAdapter() override;