Control plane API
441 declarations · 280 documented
lava
-
ActiveWindowmessageWhich window has the keyboard now.
-
AlreadyRunningexceptionCreateWindowwithsingleInstance, and the application already has a window. That window has been brought to the current workspace and activated — what a second launch is asking for — andsurfaceIdis it. Not a failure the caller should report: it is the cue to exit quietly. -
AppearancemessageWhat the desktop looks like, for a client that wants to match it.
-
ArenaNotFoundexception -
AtlasDumpFailedexceptionDumpAtlasImagescould not write the pages. -
BackdropBlurmessageThe desktop under a plate, blurred.
radiusin layout pixels. A plate without one is not drawn: a sharp plate is not supported yet. -
BackdropEffectvariantOne thing a plate does to the desktop under it. They stack: a plate is blurred, then bent and lit, then grained, whatever order they are listed in. Named one of a list rather than fields of the plate because a message cannot grow — adding a field changes the layout every client built against the older stubs reads — and a new kind of effect can be added here as a new arm, which a compositor that does not know it skips.
-
BackdropFrostmessageThe grain of frosted glass on a plate, 0…1.
-
BackdropGlassmessageThe plate as glass.
refractionis how far its rim bends what is under it, in pixels (0: flat);rim, 0…1, the light the rim catches;magnification, 1…4, how much larger what is under the plate is drawn, about its centre (1: none). -
BackdropPlatemessageA frosted rectangle of the desktop behind a surface, and what it does.
x,y,w,hin the surface's own coordinates;worhof 0 is the whole surface.cornerRadiusrounds the plate to match what sits on it. -
CapturemessageA PNG and the size it encoded to.
-
CaptureFailedexceptionThe surface exists but there was nothing to read back — it has not drawn a frame yet, or the read-back itself failed.
-
Compositorinterface -
CursorShapeenumThe pointer image a client asks for over its own surface.
-
DragImagemessageWhat hangs off the cursor during a drag out of a Lava window, as the client drew it. See
StartDrag. -
FocusAckmessagePanel → compositor on the same stream: "I am showing this one now."
-
FontNotFoundexception -
GpuAllocationmessageOne allocation, and who asked for it.
-
GpuAtlasmessageOne atlas page.
-
GpuReportmessageEverything the compositor knows about its own GPU memory.
-
GpuTexturemessageOne entry in the shared texture cache.
-
GpuWindowmessageOne canvas window and what its attachments cost.
-
IdleSettingsmessage[idle]inlava.conf: when the session locks and the screens go off. Seconds; 0 is never. -
ImageInfomessageA registered image: the id to put in a draw command, and the size it actually decoded to.
-
ImageNotFoundexceptionThe file does not exist, or is not an image this renderer can decode.
-
ImagesinterfaceImage registration that does not stop the desktop.
-
ImageTurnenumA quarter turn applied to an image as it is decoded.
-
InputAckmessageApp → renderer on the same stream: "I have consumed everything through
serial." -
InputEventmessageOne raw input event, renderer → app.
-
InputRectmessageOne rectangle a surface accepts pointer input in, in its own coordinates.
-
KeyBindingmessageOne shortcut the compositor takes before any client sees the key.
-
KeyboardLayoutmessageOne layout — or one variant of one — that this machine's xkb offers.
-
KeyboardSettingsmessageThe keyboard, as xkb is currently set up.
-
LockAttemptmessageLock screen → compositor: "is this the password?"
-
LockRefusedexceptionCreateLockSurfacewas refused: the session is not locked, or the caller is not the lock screen the compositor started for this lock. -
LockStatemessageCompositor → lock screen.
-
LockStatusenumWhere the session lock is, as the lock screen needs to draw it.
-
MenuChoicemessageCompositor → the client that asked for a menu: "the user picked this."
-
MenuChoiceAckmessageClient → compositor on the same stream: "I have that one."
-
MenuItemmessageOne row of a context menu.
-
MenuItemKindenumWhat one row is.
-
MenuReplymessageMenu client → compositor: "the user picked this", or "they did not".
-
MenuRequestmessageCompositor → menu client: "open this, here."
-
OutputInfomessageOne screen, as it is right now.
-
OutputModemessageOne mode a screen can run at.
-
OutputNotFoundexceptionNo screen by that name is connected.
-
OutputRequestmessageWhat to set a screen to.
-
PanelAreamessageWhether anything is in the way of a panel.
-
PanelAreaAckmessagePanel → compositor: "I have drawn myself for this answer."
-
PanelEdgeenumWhich screen edge a panel is docked to.
-
PixelArenaNotFoundexceptionThe client's pixel arena could not be opened, or the handle does not name one this connection attached.
-
PixelFormatenumByte order of one pixel in a pixel arena, named in memory order.
-
PixelRegionmessageOne rectangle of pixels inside an attached pixel arena.
-
PixelRegionInvalidexceptionA region of a pixel arena that does not describe pixels inside it: the rectangle runs past the end of the arena, the stride is shorter than a row, or a side is zero or too large. Distinct from
PixelArenaNotFoundbecause the arena is fine and the caller's arithmetic is not. -
PointerSettingsmessage[mouse]and[touchpad]inlava.conf, and[render] scroll-easing: how the pointer moves and how a scroll feels. -
SettingsWriteFailedexceptionThe change was applied but could not be saved, so it will not survive a restart.
-
SurfaceNotFoundexceptionThe surface id is not one this compositor handed out, or its client has already let it go.
-
SystemThememessageWhich LavaUI
Themeevery client that uses system colours should wear. -
ThemeAckmessageClient → compositor: "I have applied this theme."
-
VideoBufferInvalidexceptionA video buffer the compositor would not take: the handle is not one this connection attached, the layout is not one it can import, or the connection cannot carry a file descriptor at all.
-
VideoBufferLayoutmessageThe layout of one single-plane dma-buf the client allocated: what
gbm_bo_get_*says about it. The fd itself travels beside the message. -
VideoTargetmessageWhere a client must render a frame for the compositor to sample it without a copy through the CPU: which GPU, and which layouts of
DRM_FORMAT_ABGR8888that GPU can import. -
WallpapermessageWhat the desktop itself is painted with, behind every window.
-
WallpaperUnreadableexceptionThat file is not a picture this compositor can put on the desktop.
-
WindowFrameenumWho draws a window's non-client area.
-
WindowInfomessageOne window, as a dock or a task list has to see it.
-
WindowListmessageEvery window the compositor has, and which workspace is on screen.
-
WindowListAckmessageShell → compositor: "I have drawn this list."
-
WindowTraitsmessageWhat a window is, beyond its size and who draws its frame. All false is an ordinary window:
CreateWindowwith these zeroed isCreateSurface.