LavaUI docs

enum CursorShape

Control plane

enum CursorShape : u32

The pointer image a client asks for over its own surface.

Names a meaning, not a bitmap: the compositor resolves each to whatever the user's cursor theme calls it, so the desktop stays one cursor theme rather than one per application. That is also why the set is small — every shape here has to exist in every theme and in GLFW's standard cursors, so a windowed app and a client draw the same thing.

The client keeps the policy: which view wants which shape is a question only the process with the view tree can answer, and the compositor's own cursors (the resize band around a window, the title bar) still win over this, because those are its affordances and not the client's.

idl/lava.npidl:119

Cases

arrow = 0

The default pointer.

idl/lava.npidl

crosshair = 3

Not documented.

idl/lava.npidl

pointer = 2

The "this activates something" hand.

idl/lava.npidl

resizeLeftRight = 4

Horizontal drag: a vertical divider, a column edge.

idl/lava.npidl

resizeUpDown = 5

Vertical drag: a horizontal divider, a row edge.

idl/lava.npidl

text = 1

I-beam, over editable or selectable text.

idl/lava.npidl