aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
AgeCommit message (Collapse)Author
2022-11-14wlr_scene: Add drag icon helperAlexander Orzechowski
2022-11-14layer-shell-v1: specify version in constructorSimon Ser
This allows compositors to indicate which features they support, and is required to eventually make this API stable. References: https://github.com/swaywm/sway/issues/7260
2022-11-13xwayland: fix wlr_xwayland_surface_from_wlr_surface() docsKirill Primak
32daa43a454bcea1306ad0976fd4161ce8c7e86f has removed the asymmetry in the relationship of a wlr_surface and an unmapped wlr_xwayland_surface, when wlr_surface.role_data wasn't NULL but wlr_xwayland_surface.surface was. However, this also means that wlr_xwayland_surface_from_wlr_surface() now returns NULL if the wlr_surface is unmapped. Fix the documentation to reflect this.
2022-11-11scene: constify region APIsSimon Ser
2022-11-11region: constifySimon Ser
2022-11-11output: constify damage APIsSimon Ser
2022-11-11output-damage: constify wlr_output_damage_add()Simon Ser
2022-11-11damage-ring: constify wlr_damage_ring_add()Simon Ser
2022-11-11buffer: constify wlr_client_buffer_apply_damage()Simon Ser
2022-11-11render/texture: constify wlr_texture_update_from_buffer()Simon Ser
2022-11-11util/region: constifySimon Ser
2022-11-11output-damage: deprecateKirill Primak
2022-11-11wlr_scene: Fix texture reuseAlexander Orzechowski
Add private interface to ignore a buffer that's locking a client_buffer for damage tracking. This should eventually be replaced by wlr_raster.
2022-11-08damage-ring: add missing headersKirill Primak
2022-11-08render/vulkan: add some interfaces to allow compositors to integratezccrs
Added wlr_vk_renderer_get_* functions to allow get the VkInstance, VkPhysicalDevice, VkDevice, queue family of a wlr_vk_renderer. Added wlr_vk_renderer_get_current_image_attribs function to allow get the VkImage of current renderer buffer to use on compositors. Added wlr_renderer_is_vk function, it's like the wlr_renderer_is_gles2, returns true if the wlr_renderer is a wlr_vk_renderer. Added wlr_vk_image_get_attribs function to get a VkImage and it's extras information (e.g. a VkImageLayout and VkImageFormat of the VkImage) from a wlr_texture.
2022-11-06xwayland/xwm: use role object destroy handlerKirill Primak
2022-11-06xdg-shell: use role object destroy handlerKirill Primak
2022-11-06drag-icon: use role object destroy handlerKirill Primak
2022-11-06input-method: use role object destroy handlerKirill Primak
2022-11-06session-lock: use role object destroy handlerKirill Primak
2022-11-06subcompositor: use role object destroy handlerKirill Primak
2022-11-06layer-shell: use role object destroy handlerKirill Primak
2022-11-06compositor: introduce wlr_surface_destroy_role_object()Kirill Primak
2022-11-05xdg-shell: fix geometry typesKirill Primak
2022-11-02xwayland: split headersSimon Ser
We're about to get one more Xwayland-related thing, and this header already contains two things.
2022-10-24wlr-output-management: implement adaptive syncIsaac Freund
Version 4 of the protocol adds support for reporting/setting adaptive sync state of outputs. Implement these new requests/events in wlroots.
2022-10-20output: clarify custom modes warningSimon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3514
2022-10-14idle-notify-v1: new protocol implementationSimon Ser
References: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/29
2022-10-14xdg-toplevel: send invalid_parent errorKirill Primak
2022-10-07drm-lease-v1: fix error codepathSimon Ser
We were crashing in the error codepath [1] when wlr_drm_create_lease() fails. To fix this, delay the creation of the wlr_drm_lease_v1 until the request is granted. Previously we were allocating that struct early without populating the drm_lease field. However that means we ended up with a half-constructed struct in the error codepath which is annoying to handle. [1]: https://github.com/swaywm/sway/issues/7204#issuecomment-1269797356
2022-10-07output-damage: drop unused pending_attach_renderKirill Primak
2022-10-07output-damage: drop precommit listenerKirill Primak
2022-10-04render: drop wlr_renderer_read_pixels() flagsSimon Ser
These are unused.
2022-10-01screencopy-v1: make sure wlr_buffer enum is visibleConsolatis
.. by including wlr_buffer.h
2022-09-30output: add wlr_output_state.allow_artifactsSimon Ser
When starting up, the compositor might call wlr_output_set_mode() with a mode which is already the current one. wlroots will detect this and make the wlr_output_set_mode() call a no-op. During the next wlr_output_commit() call, wlroots will perform an atomic commit without the ALLOW_MODESET flag. This is an issue, because some drivers need ALLOW_MODESET even if the mode is the same. For instance, if the FB stride or modifier changed, some drivers require a modeset. Add a new flag "allow_artifacts" which is set when the compositor calls mode-setting functions. Use this flag to figure out whether we want to perform atomic commits with ALLOW_MODESET. (The name "allow_artifacts" is picked because ALLOW_MODESET is a misnomer, see [1].) [1]: https://patchwork.freedesktop.org/patch/505107/ Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3499
2022-09-22screencopy-v1: use wlr_buffer APIsSimon Ser
Instead of using low-level wl_shm_buffer and wlr_dmabuf_v1_buffer APIs, use the unified wlr_buffer APIs. That way it doesn't matter what the exact wlr_buffer implementation is used, any which provides the necessary capabilities (data_ptr or dmabuf) would work. Simplifies the logic a bit, and will make the transition to wlr_shm easier.
2022-09-22screencopy-v1: rename wlr_screencopy_frame_v1.strideSimon Ser
Make it clear it's only about shm, not about DMA-BUFs.
2022-09-22screencopy-v1: use DRM format code for shm buffersSimon Ser
Will allow us to simplify common shm/DMA-BUF logic later on.
2022-09-22screencopy-v1: rename wlr_screencopy_frame_v1.{format,fourcc}Simon Ser
Make it clear that one is for shm buffers only, and the other is for DMA-BUF buffers only.
2022-09-22output: add wlr_output_mode.picture_aspect_ratioSimon Ser
CTA-861-H defines a picture aspect ratio which may be attached to each mode. This affects the way the sink will display the image. See annexes H.1 and H.2 for examples.
2022-09-17single-pixel-buffer-v1: fix header guard nameSimon Ser
Be consistent with other headers.
2022-09-11xdg-foreign-v2: s/unmap/destroyKirill Primak
Same as the previous commit.
2022-09-11xdg-foreign-v1: s/unmap/destroyKirill Primak
dac040f87fee1cfdd7660aa1786b0734d95e03a4 mistakenly renamed xdg_surface_destroy listener, which was listening to *unmap* events, to xdg_surface_unmap. The actual fix, however, is to listen to destroy events. This fixes various crashes.
2022-09-05compositor: fix wlr_surface_set_role return value docsSimon Ser
It returns a bool, not an int.
2022-08-30output: remove unknown adaptive sync stateIsaac Freund
This was previously used by the X11 backend but is no longer required since the previous commit.
2022-08-30output: fail commits if adaptive sync cannot be enabledSimon Ser
Previously, adaptive sync was just a hint and wouldn't make any atomic commit fail if the backend didn't support it. The main reason is wlr_output_test wasn't supported at the time. Now that we have a way for compositors to test whether a change can work, let's remove the exception for adaptive sync and convert it to a regular output state field.
2022-08-19wlr_scene: Convert render_list to wl_arrayKenny Levinsen
This simplifies some of the growth logic, but uses array_realloc to shrink the array if needed.
2022-08-15util/box: Introduce wlr_fbox_equalAlexander Orzechowski
2022-08-15util/box: Introduce wlr_box_equalAlexander Orzechowski
2022-08-14wlr_scene: Remove unused typedefAlexander Orzechowski