mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-02-06 04:06:11 -05:00
The single-pixel buffer protocol is used to allow wayland clients to easily draw solid-color rectangles by presenting a 1x1-pixel buffer and scaling it to the desired size. This patch improves how these buffers are then handled in the scene-tree renderer. We already ignore opaque black rectangles at the very bottom (and anything under them) because we assume we'll be rendering on a black background. This patch detects black opaque single-pixel buffers and handles them in the same way as black opaque rectangles. It also renders single-pixel buffers as rectangles rather than buffers because this is probably more efficient in the underlying renderer. In wlr_scene_surface we cache whether the attached buffer is a single-pixel buffer. This is done because the wlr_single_pixel_buffer_v1 will be destroyed after texture upload, after which it becomes much more annoying to check if the buffer is a single-pixel buffer. |
||
|---|---|---|
| .. | ||
| drag_icon.c | ||
| layer_shell_v1.c | ||
| output_layout.c | ||
| subsurface_tree.c | ||
| surface.c | ||
| wlr_scene.c | ||
| xdg_shell.c | ||