/* * Copyright (c) 2025, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include namespace Gfx { bool ImageCursor::operator==(ImageCursor const& other) const { return hotspot == other.hotspot && bitmap.bitmap() == other.bitmap.bitmap(); } } namespace IPC { template<> ErrorOr encode(Encoder& encoder, Gfx::ImageCursor const& image_cursor) { TRY(encoder.encode(image_cursor.bitmap)); TRY(encoder.encode(image_cursor.hotspot)); return {}; } template<> ErrorOr decode(Decoder& decoder) { Gfx::ImageCursor result; result.bitmap = TRY(decoder.decode()); result.hotspot = TRY(decoder.decode()); return result; } }