atagen

monolith

public
Star0
Watch0

Commit 8546301ed5f7

tarball

atagen <boss@atagen.co>2026-10-19 09:33 UTC

1 file changed+3-0
globals: advertise wp_single_pixel_buffer_manager_v1

Clients such as GTK4 and mpv fall back to allocating shm or dmabuf buffers for solid fills when the global is missing. smithay's WaylandSurfaceRenderElement already turns these buffers into a Color32F draw_solid call and skips the texture import, so the Vulkan renderer needs no changes.
Modified file: crates/monolith/src/globals.rs+3 additions
@@ -29,6 +29,7 @@ use smithay::wayland::shell::wlr_layer::WlrLayerShellState;
2929 use smithay::wayland::shell::xdg::XdgShellState;
3030 use smithay::wayland::shell::xdg::decoration::XdgDecorationState;
3131 use smithay::wayland::shm::ShmState;
32+use smithay::wayland::single_pixel_buffer::SinglePixelBufferState;
3233 use smithay::wayland::viewporter::ViewporterState;
3334 use smithay::wayland::xdg_activation::XdgActivationState;
3435 use smithay::wayland::xwayland_shell::XWaylandShellState;
@@ -60,6 +61,7 @@ pub struct Protocols {
6061 _output_manager: OutputManagerState,
6162 _cursor_shape: CursorShapeManagerState,
6263 _viewporter: ViewporterState,
64+ _single_pixel_buffer: SinglePixelBufferState,
6365 _fractional_scale: FractionalScaleManagerState,
6466 }
6567
@@ -120,6 +122,7 @@ impl Protocols {
120122 _output_manager: OutputManagerState::new_with_xdg_output::<State>(dh),
121123 _cursor_shape: CursorShapeManagerState::new::<State>(dh),
122124 _viewporter: ViewporterState::new::<State>(dh),
125+ _single_pixel_buffer: SinglePixelBufferState::new::<State>(dh),
123126 _fractional_scale: FractionalScaleManagerState::new::<State>(dh),
124127 }
125128 }