Repository navigation
LavaUI v1.3.0
LavaUI v1.3.0
43 commits since v1.2.0.
New apps
- LavaPlayer, a video player on libmpv. mpv renders into dma-bufs on the
compositor's GPU through an EGL bridge, sampled with no CPU copy
(software frames where that path will not come up). Keyframe seeks while
dragging, exact on release; a floating fullscreen bar that hides with the
pointer; subtitle and audio track buttons; external subtitle files. - LavaPDF, a PDF reader over poppler. Tiles at the exact zoom, uploaded
through the new pixel arena; select across pages, copy, find; the outline
in a sidebar; links (pages, and http/https/mailto only); password-locked
documents. Resizing keeps a fit-width page still and no longer piles up
tiles at every size it passed through. - lava-index, a per-user file index daemon (SQLite FTS5, inotify, mount
aware, systemd user unit), and LavaFind, file search over it, frosted
over the desktop. Settings gains a Search page for its folders (Mod+S);
LavaView and LavaExplorer report opened files to it.
Desktop
- The panel adds a Window menu to every focused window's global menu:
Always on Top, Center on Screen, Close (alsolavactl pin|center|close). - Apps' first menu names the app rather than "Lava...".
- Global menu hears layout updates, and the window stays focused under its
menu. - A hardware cursor on an NVIDIA-wired output of a hybrid laptop, and no
software cursor blurred into frost or CaptureScreen pictures. - Canvas waits for the compositor's reads before redrawing a shared buffer
- Canvas waits for the compositor's reads before redrawing a shared buffer
(RADV ignored the implicit fences), and writes the blur slot before
recording rather than between segments.
LavaUI
.onHoverfor a view and everything in it;CursorShape.hidden.Canvas(onPointerMove:): the cursor can depend on where the pointer is.- Wheel events carry held modifiers;
KeyCode.f1...f12. FileDialog.openFolder.- FocusManager gives focus back when the focused node leaves the tree.
- What the first frame raises is kept; FrameTasks run after a frame, not
after a frame held for its consumer.
Compatibility
- New IDL calls:
SetAlwaysOnTop,CenterWindow,CloseWindow, the pixel
arena (AttachPixelArena,UploadPixels, ...) and video buffers
(GetVideoTarget,AttachVideoBuffer,ShowVideoBuffer, ...). Method
indices are positional: rebuild clients and compositor together. - New dependencies: poppler-cpp, poppler-glib and libmpv (Debian and Arch
lists updated).