feat(mirada): zwp_linux_dmabuf — clientes que pintan por GPU
Fase 1 del plan «shell»: para que carmen pueda hospedar a `shuma-shell` (y a cualquier app GPUI o navegador acelerado) hace falta que los clientes con GPU puedan compartir su búfer de vídeo. carmen sólo hablaba `wl_shm` (búferes de software) — por eso `foot` corría pero las apps GPUI salían en negro. - `App` lleva un `DmabufState`; `impl DmabufHandler` con `dmabuf_imported` que acepta el búfer (el `GlesRenderer` ya importa DMA-BUF al componer, vía `ImportAll`, así que la validación real ocurre al pintar). - `delegate_dmabuf!(App)`. - `announce_dmabuf` crea el global con los formatos de `dmabuf_formats()` del renderer — se llama en ambos backends una vez creado el renderer. Pendiente del plan: Fase 2 (`wlr-layer-shell`) y Fase 3 (modo launcher de `shuma-shell` — barra + input + cajón de resultados). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -1000,7 +1000,8 @@
|
||||
WAYLAND_DISPLAY=wayland-1 foot # lanza clientes contra él (imprime su WAYLAND_DISPLAY al arrancar)
|
||||
MIRADA_SOCKET=/tmp/mirada.sock cargo run -p mirada-compositor # enlazado: la app mirada (Cerebro GPUI) decide la geometría
|
||||
cargo run -p mirada-compositor -- --drm # nativo sobre TTY (MIRADA_STARTUP=foot lanza un cliente al arrancar)
|
||||
Habla wl_compositor/xdg_shell/wl_shm/wl_seat/wl_data_device; compone con GlesRenderer. Reusa mirada-body y mirada-link.
|
||||
Habla wl_compositor/xdg_shell/wl_shm/wl_seat/wl_data_device/xdg-decoration/zwp_linux_dmabuf; compone con GlesRenderer.
|
||||
dmabuf permite clientes que pintan por GPU (apps GPUI, navegadores acelerados). Reusa mirada-body y mirada-link.
|
||||
En --drm el foco sigue al puntero y clics/rueda van a la ventana debajo; el cursor toma la forma del cliente.
|
||||
Cada ventana lleva un marco fino: azul la enfocada, gris las demás.
|
||||
Super+arrastre mueve la ventana (botón izq.) o la redimensiona (der.) — al arrastrarla pasa a flotar.
|
||||
|
||||
Reference in New Issue
Block a user