/* * Copyright (c) 2025, Tim Flynn * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include template<> ErrorOr IPC::encode(Encoder& encoder, Web::Clipboard::SystemClipboardRepresentation const& output) { TRY(encoder.encode(output.data)); TRY(encoder.encode(output.mime_type)); return {}; } template<> ErrorOr IPC::decode(Decoder& decoder) { auto data = TRY(decoder.decode()); auto mime_type = TRY(decoder.decode()); return Web::Clipboard::SystemClipboardRepresentation { move(data), move(mime_type) }; } template<> ErrorOr IPC::encode(Encoder& encoder, Web::Clipboard::SystemClipboardItem const& output) { TRY(encoder.encode(output.system_clipboard_representations)); return {}; } template<> ErrorOr IPC::decode(Decoder& decoder) { auto system_clipboard_representation = TRY(decoder.decode>()); return Web::Clipboard::SystemClipboardItem { move(system_clipboard_representation) }; }