/* * Copyright (c) 2024, Andrew Kaster * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include namespace IPC { template<> ErrorOr encode(Encoder& encoder, ::Web::HTML::WebViewHints const& data_holder) { TRY(encoder.encode(data_holder.popup)); TRY(encoder.encode(data_holder.width)); TRY(encoder.encode(data_holder.height)); TRY(encoder.encode(data_holder.screen_x)); TRY(encoder.encode(data_holder.screen_y)); return {}; } template<> ErrorOr<::Web::HTML::WebViewHints> decode(Decoder& decoder) { auto popup = TRY(decoder.decode()); auto width = TRY(decoder.decode>()); auto height = TRY(decoder.decode>()); auto screen_x = TRY(decoder.decode>()); auto screen_y = TRY(decoder.decode>()); return ::Web::HTML::WebViewHints { .popup = popup, .width = width, .height = height, .screen_x = screen_x, .screen_y = screen_y, }; } }