aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2023-05-04drm_format_set_union: Require initialized dst and remove assertAlexander Orzechowski
2023-05-04xwayland: allow compositor to set withdrawn statenovenary
2023-05-04wlr_compositer: Keep track if surface has committed a buffer before.Alexander Orzechowski
This would break if you are running with a NULL renderer.
2023-05-03drm_format_set: Mark as unstableAlexander Orzechowski
This is supposed to be an unstable interface and it was a mistake that this header was not included.
2023-05-03Add union function for format setsAustin Shafer
2023-05-02render: introduce blend modeSimon Ser
Allow callers to pick the blend mode when rendering a rect. The "none" mode can be used to disable blending and clear rects.
2023-04-28render/vulkan: use VK_KHR_synchronization2Simon Ser
This simplifies the vkQueueSubmit call, removing the need to pass timeline semaphore point values as separate arrays.
2023-04-25render/pixman: implement render pass APISimon Ser
2023-04-25render/pixman: add begin_pixman_data_ptr_access()Simon Ser
This logic is used twice.
2023-04-25output: add wlr_output_add_software_cursors_to_render_pass()Simon Ser
Same as wlr_output_render_software_cursors(), but takes a struct wlr_render_pass.
2023-04-25render/pass: add legacy render pass implementationSimon Ser
Add a render pass implementation which leverages the legacy rendering API. This is helpful during the migration.
2023-04-25render: add render pass helpersSimon Ser
2023-04-25Add a new renderer APISimon Ser
Goals: - Extensibility: we need to be able to add new params to the calls to render a texture/rect. For instance we'll need to add fences to the render texture operation for explicit sync purposes. - No implicit state: no more bind_buffer, begin, end. - No matrices: these hurt Pixman and we don't need them. - Clip regions for optimized damage repainting. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3188
2023-04-20output-layer: add cropping supportSimon Ser
Add a src_box state field. Use the SRC_* KMS props in the DRM backend, reject the layers in the Wayland backend (for now, we can support it later via viewporter).
2023-04-18render/vulkan: use full names for extension command fieldsSimon Ser
This makes grepping much easier.
2023-04-18xcursor: sync with libwaylandSimon Ser
xcursor.c was copied over from libwayland-cursor. A lot of cosmetic imporvements have been merged upstream. Copy-paste the new version.
2023-04-18seat: Provide dummy resources for inert seatsAndri Yngvason
2023-04-14compositor: add wlr_surface_set_preferred_buffer_transform()Simon Ser
References: https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/220
2023-04-14compositor: add wlr_surface_set_preferred_buffer_scale()Simon Ser
References: https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/220
2023-04-14compositor: pass version in wlr_compositor_createSimon Ser
This allows wlroots to support newer versions of the interface without breaking the API.
2023-04-06output: Drop output_is_direct_scanoutAlexander Orzechowski
2023-04-06output-damage: dropSimon Ser
Compositors can migrate to wlr_damage_ring.
2023-04-06output: add wlr_output_is_direct_scanout_allowed()Simon Ser
This lets compositors check whether direct scan-out is possible. Compositors will soon be responsible for manually calling this function.
2023-04-04output-layer: add support for scaling buffersSimon Ser
This allows callers to set a destination size different from the buffer size to scale them. The DRM backend supports this. The Wayland backend doesn't yet (we'd need to wire up viewporter).
2023-03-28backend/wayland: only unmap layers when necessarySimon Ser
2023-03-28output-layer: cache current stateSimon Ser
The will be used by the Wayland backend to figure out whether updating sub-surface position is necessary.
2023-03-24backend/wayland: support touch cancel eventsRose Hudson
since wayland doesn't provide a touch id in cancel events, track what points are active so we can cancel all of them timestamp is also not provided - use 0 because no one's paying attention to that anyway Closes #3000
2023-03-20backend/wayland: fix undefined reference to wlr_wl_input_device_get_seatzccrs
Amend b7e9ad79 to remove wlr_wl_input_device_get_seat definition. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3611
2023-03-12xdg-shell: improve unmapping logic slightlyKirill Primak
2023-03-10output-layer: require all layers in wlr_output_state.layersSimon Ser
- Simplifies the backends - Avoids having two ways to do the same thing: previously one could disable a layer by either omitting it from wlr_output_state.layers, or by passing a NULL buffer - We can change our mind in the future: we can allow users to omit some layers and define a meaning without breaking the API. References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4017#note_1783997
2023-03-09xwm: make atom_map staticKirill Primak
2023-03-01util/log: prefix WLR_REL_SRC_DIR with underscoreSimon Ser
Just like _WLR_FILENAME and _WLR_ATTRIB_PRINTF, this makes it more obvious that this isn't part of our API.
2023-02-28backend/drm: use libdisplay-info for CVT mode generationSimon Ser
2023-02-28backend/drm: use libdisplay-info to parse EDIDSimon Ser
2023-02-28render/vulkan: prefer render node for wlr_renderer_get_drm_fd()Simon Ser
Instead of returning a primary node from wlr_renderer_get_drm_fd(), prefer to return a render node if any.
2023-02-24output: introduce wlr_output_configure_primary_swapchain()Simon Ser
The goal is to simplify wlr_output by moving all of its rendering API into separate helpers. Here is a first step to sunset wlr_output_attach_render(). Instead, compositors call wlr_output_configure_primary_swapchain(), wlr_swapchain_acquire(), wlr_renderer_begin_with_buffer() and wlr_output_attach_buffer(). Note that compositors can supply a base struct wlr_output_state. This is useful to allocate a buffer suitable for submission with a modeset, for instance. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3079 References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3197 References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3984
2023-02-21render/swapchain: make publicSimon Ser
We've had this struct for a while. It'd be useful for compositors if they want to manage the swap chains themselves instead of being forced to use wlr_output's. Some compositors might also want to use a swapchain without an output.
2023-02-21output-layer: document interactions with screen captureSimon Ser
When e.g. screencopy-v1 is active, callers are responsible for disabling output layers.
2023-02-21backend/drm: drop wlr_drm_layer.pending_{width,height}Simon Ser
No need to store this info in struct wlr_drm_layer. We can just extract the size when we need it.
2023-02-21output: expose wlr_output_state_set_buffer()Simon Ser
2023-02-21output: expose wlr_output_state_finish()Simon Ser
Same as the original function, but check for the bitfield before calling pixman_region32_fini(), because that function expects an initialized region.
2023-02-20wlr_scene: Add dmabuf_feedback helperAlexander Orzechowski
2023-02-20wlr_scene: Cleanup header includesAlexander Orzechowski
We don't need to pull wlr_compositor.
2023-02-20linux-dmabuf-v1: add helper for output layer feedback eventsSimon Ser
2023-02-20backend/drm: send output layer feedback eventsSimon Ser
2023-02-20output-layer: add feedback eventSimon Ser
2023-02-20backend/drm: add support for output layersSimon Ser
2023-02-20backend/drm: add libliftoff composition layerSimon Ser
This will be useful for implementing the output layers API.
2023-02-20backend/drm: add libliftoff interfaceSimon Ser
2023-02-20backend/drm: init wlr_drm_plane for all plane typesSimon Ser