Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-12-25 | tearing-control-v1: synchronize state with surface | Simon Ser | |
2023-12-25 | session-lock-v1: use wlr_surface_synced | Simon Ser | |
2023-12-25 | pointer-constraints-v1: use wlr_surface_synced | Simon Ser | |
2023-12-25 | layer-shell-v1: use wlr_surface_synced | Simon Ser | |
2023-12-25 | xdg-decoration: use wlr_surface_synced for toplevel | Simon Ser | |
2023-12-25 | subcompositor: use wlr_surface_synced | Simon Ser | |
2023-12-25 | xdg-shell: use wlr_surface_synced for popups | Simon Ser | |
2023-12-25 | xdg-shell: use wlr_surface_synced for toplevel | Simon Ser | |
2023-12-25 | xdg-shell: use wlr_surface_synced for wlr_xdg_surface | Simon Ser | |
2023-12-25 | compositor: add wlr_surface_role.client_commit | Simon Ser | |
2023-12-25 | compositor: add wlr_surface_synced | Simon Ser | |
A lot of protocols extend the wl_surface state. Such protocols need to synchronize their extended state with wl_surface.commit and cached states. Add a new utility for this purpose. | |||
2023-12-25 | compositor: add wlr_surface_state_has_buffer() | Simon Ser | |
2023-12-25 | compositor: fix wlr_surface_has_buffer() doc comment | Simon Ser | |
The function does not check whether the upload succeeded: it does not check the wlr_client_buffer. | |||
2023-12-25 | compositor: remove unnecessary wlr_surface.has_buffer | Simon Ser | |
No need to store this bit, we can infer it from buffer_width and buffer_height. | |||
2023-12-25 | pointer-constraints-v1: add cursor_hint.enabled | Simon Ser | |
This allows compositors to check whether the cursor hint is set. | |||
2023-12-12 | backend/drm: add wlr_drm_backend_get_parent() | Simon Ser | |
Allows compositors to figure out whether a DRM backend is secondary on a multi-GPU setup. | |||
2023-12-11 | render/pixman: add wlr_pixman_renderer_get_buffer_image() | Roman Gilg | |
This is similar to wlr_pixman_texture_get_image and can be useful for compositors to access the rendering data. | |||
2023-12-05 | render/gles2: add wlr_gles2_renderer_get_buffer_fbo() | Simon Ser | |
Replacement for wlr_gles2_renderer_get_current_fbo(). Wayfire uses it for instance. | |||
2023-12-04 | compositor: drop surface precommit event | Simon Ser | |
This is unused. | |||
2023-12-04 | render/vulkan: use _SRGB image view when possible | Manuel Stoeckl | |
This is the last of a set of commits which ensures that both textures and render buffers can be accessed through _UNORM and _SRGB image views. While _UNORM image views are not yet used for 8-bpc image formats, they will be needed in the future to support color transforms for both textures and render buffers. | |||
2023-12-04 | render/vulkan: constify vulkan_format_props_find_modifier | Manuel Stoeckl | |
2023-12-04 | render/vulkan: detect which _UNORM formats support _SRGB views | Manuel Stoeckl | |
2023-12-04 | render/vulkan: track and use _UNORM variants of _SRGB formats | Manuel Stoeckl | |
Later commits will start using _SRGB image views again, where appropriate. | |||
2023-12-03 | wlr_scene: Track output damage separately | Alexander Orzechowski | |
The damage ring is only supposed to keep track of damage within the swapchain | |||
2023-12-03 | swapchain: Add wlr_swapchain_has_buffer | Alexander Orzechowski | |
2023-11-30 | renderer: Drop buffer binding | Alexander Orzechowski | |
2023-11-30 | render: Nuke old read pixels API | Alexander Orzechowski | |
Sadly, the new API is not backwards compatible with the old API. Since we have already switched all users in wlroots to the new API compositors are already practically mandated to implement the new API. Let's get rid of the old one since there is no point. | |||
2023-11-30 | wlr_texture: Introduce wlr_texture_preferred_read_format | Alexander Orzechowski | |
2023-11-30 | render/vulkan: Implement texture_read_pixels | Alexander Orzechowski | |
2023-11-30 | render/gles2: Implement texture_read_pixels | Alexander Orzechowski | |
Also get rid of gles2_texture.owns_texture. We only use the tex/fbo | |||
2023-11-30 | wlr_texture: Introduce wlr_texture_read_pixels_options helpers | Alexander Orzechowski | |
2023-11-30 | wlr_texture: Introduce wlr_texture_read_pixels | Alexander Orzechowski | |
2023-11-30 | output: replace wlr_render_timer arg with wlr_buffer_pass_options | Simon Ser | |
This scales better when more render pass options are added. | |||
2023-11-30 | render/gles2: save/restore context when creating/submitting a render pass | Simon Ser | |
This is useful for e.g. lazily blitting a texture for readback purposes while rendering. | |||
2023-11-30 | render/gles2: document EGL context gotchas | Simon Ser | |
2023-11-30 | output: drop stale references to wlr_output_attach_render() | Simon Ser | |
It turns out we forgot about the function declaration in the header. Also some docs were still referring to that function. Move the wlr_output_attach_render() docs to wlr_output_begin_render_pass(). | |||
2023-11-30 | render/gles2: reword wlr_gles2_texture comments | Simon Ser | |
These comments were a bit misleading: - "GL_TEXTURE_2D == mutable": not really, imported non-external-only DMA-BUFs would also use this target, but are not mutable. - "Only affects target == GL_TEXTURE_2D": same here. - "If imported from a wlr_buffer": not really, would be NULL if imported from a shm wlr_buffer. Adjust these comments to better reflect reality and adjust the check in gles2_texture_update_from_buffer(). | |||
2023-11-30 | render/gles2: Don't attach texture as buffer addon | Alexander Orzechowski | |
Since wlr_gles2_buffer is now managing importing for us, there is no reason for us to continue doing this. | |||
2023-11-30 | render/gles2: Don't track image in texture | Alexander Orzechowski | |
We can get it from the buffer | |||
2023-11-30 | render/gles2: Don't double import dmabuf | Alexander Orzechowski | |
We can double import a dmabuf if we use it as a texture target and a render target. Instead, let's unify render targets and texture dmabuf imports to use wlr_gles2_buffer which manages the EGLImageKHR | |||
2023-11-30 | renderer/gles2: Bail rendering to external buffers when binding them | Alexander Orzechowski | |
We can't do it while we're creating them because we'll want to use gles2 buffers for textures soon. | |||
2023-11-30 | render/gles2: Lazily create buffer fbo | Alexander Orzechowski | |
2023-11-30 | backend/drm: remove wlr_drm_renderer.backend | Simon Ser | |
This is unused. | |||
2023-11-30 | backend/drm: move drm_plane_finish_surface() to drm.c | Simon Ser | |
This function touches queued_fb/current_fb, which the renderer has nothing to do with. | |||
2023-11-30 | backend/drm: split wlr_drm_fb related functions into separate file | Simon Ser | |
2023-11-29 | render: Drop rendering_with_buffer | Alexander Orzechowski | |
This is always true now that we can only render with a buffer. | |||
2023-11-29 | output: Drop back_buffer | Alexander Orzechowski | |
2023-11-29 | output: Drop wlr_output_attach_render | Alexander Orzechowski | |
2023-11-29 | renderer: Drop wlr_renderer_begin | Alexander Orzechowski | |
2023-11-29 | damage_ring: add wlr_damage_ring_rotate_buffer() | Simon Ser | |
This adds an alternate way to use wlr_damage_ring without the concept of buffer age. Buffer age is a concept inherited from EGL but there is no real reason why we should continue to use that in wlroots. Instead, use wlr_buffer pointers. Eventually, we should be able to remove the buffer age based functions. |