/* * Copyright (c) 2018-2020, Andreas Kling * Copyright (c) 2025, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include namespace Gfx { enum class StandardCursor { None = 0, Hidden, Arrow, Crosshair, IBeam, ResizeHorizontal, ResizeVertical, ResizeDiagonalTLBR, ResizeDiagonalBLTR, ResizeColumn, ResizeRow, Hand, Help, Drag, DragCopy, Move, Wait, Disallowed, Eyedropper, Zoom, __Count, }; struct ImageCursor { ShareableBitmap bitmap; IntPoint hotspot; bool operator==(ImageCursor const& other) const; }; using Cursor = Variant; } namespace IPC { template<> ErrorOr encode(Encoder&, Gfx::ImageCursor const&); template<> ErrorOr decode(Decoder&); }