Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-02-21 | backend/drm: don't destroy previous DRM master blobs | Simon Ser | |
On startup, we fetch the previous MODE_ID blob ID so that compositors can keep using the previous mode if they want to. However, that blob doesn't belong to us, it belongs to the previous DRM master. As a result, we get an error when trying to destroy it. Fix this by tracking whether the blob belongs to us or not. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3811 | |||
2024-02-21 | backend/drm: fix broken link to KMS property docs | Simon Ser | |
The Linux graphics section of 01.org is no more. Link to more official docs instead. | |||
2024-02-15 | backend/drm: move restore logic to drm.c | Simon Ser | |
We'll need to use a bunch of internal functions from that file in the next commits. | |||
2024-02-14 | backend/drm: atomically reset state after VT switch | Simon Ser | |
Allows the KMS driver to parallelize the modesets, so should be faster than going through each CRTC one by one. | |||
2024-02-14 | backend/drm: drop wlr_drm_backend arg from create_mode_blob() | Simon Ser | |
No need for this, the backend can be grabbed from the connector. | |||
2024-02-12 | ext-foreign-toplevel-list-v1: new protocol implementation | columbarius | |
This implements the new ext-foreign-toplevel-list-v1 protocol [1]. Implemented analog to the zwlr-foreign-toplevel-management-v1 implementation. The additional _ext_ in the names was added to avoid name collisions. [1]: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/187 Co-authored-by: Leon Henrik Plickat <leonhenrik.plickat@stud.uni-goettingen.de> | |||
2024-02-06 | linux_dmabuf_v1: allow callbacks for checking dmabuf import | Austin Shafer | |
2024-02-06 | xdg-shell: drop automatic surface configuration | Kirill Primak | |
Compositors now are expected to wait for an initial commit by checking wlr_xdg_surface.initial_commit on every surface commit and send (schedule) configure events manually. | |||
2024-02-02 | allocator: remove backend parameter in allocator_autocreate_with_drm_fd | Austin Shafer | |
Since we only use the backend capabilities here we can simply pass them in directly. This allows other locations to create an allocator even if they don't have a backend. They can simply specify the caps they want instead. | |||
2024-02-02 | switch: add docs | Simon Ser | |
2024-02-01 | backend/session: add docs | Simon Ser | |
2024-02-01 | compositor: drop wlr_surface.external_damage | Kirill Primak | |
2024-01-31 | render/pixel-format: Move has_alpha into it's own array | Leo Li | |
Some opaque pixel formats (nv12, p010) require per-plane bytes_per_block info. However, it doesn't make sense to store them in wlr_pixel_format_info, as they will never be useful (currently, this info is used for shm, which doesn't have a concept of multi-planar buffers.) Let's define a separate array and function for determining whether a pixel format has alpha. | |||
2024-01-31 | Create & implement transient seat protocol | Andri Yngvason | |
2024-01-31 | linux-dmabuf-v1: switch to stable | Simon Ser | |
The protocol is no longer unstable. | |||
2024-01-31 | linux-dmabuf-v1: fix include guard name | Simon Ser | |
2024-01-29 | wlr_damage_ring: Replace wlr_damage_ring_rotate_buffer with original list impl | Alexander Orzechowski | |
The seq based implementation is complex to reason about and doesn't even work. | |||
2024-01-27 | compositor: don't get buffer from pending buffer resource too early | Kirill Primak | |
Fixes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3795 | |||
2024-01-27 | scene: release shm buffers once uploaded | Simon Ser | |
Once a shm buffer is uploaded there's no reason for wlr_scene_buffer to keep it locked any further. Allow the compositor to re-use it. | |||
2024-01-27 | compositor: introduce wlr_surface_reject_pending() | Kirill Primak | |
2024-01-25 | backend: take wl_event_loop instead of wl_display in wlr_backend_autocreate() | Simon Ser | |
2024-01-25 | backend/multi: take wl_event_loop instead of wl_display | Simon Ser | |
2024-01-25 | backend/drm: drop wl_display argument | Simon Ser | |
We can grab the event loop from the wlr_session instead. | |||
2024-01-25 | backend/x11: take wl_event_loop instead of wl_display | Simon Ser | |
2024-01-25 | backend/wayland: take wl_event_loop instead of wl_display | Simon Ser | |
2024-01-25 | backend/libinput: drop wl_display argument | Simon Ser | |
We can grab the event loop from the wlr_session instead. | |||
2024-01-25 | backend/headless: take wl_event_loop instead of wl_display | Simon Ser | |
2024-01-25 | xwayland: add support for _NET_WM_WINDOW_TYPE_DESKTOP atom | Grigory Kirillov | |
2024-01-25 | backend: destroy multi backend when primary backend is | Simon Ser | |
This makes it easy for compositors to handle situations where the DRM or libinput backend becomes unavailable. Compositors can listen the destroy event of the multi backend returned by wlr_backend_autocreate() and decide what to do. | |||
2024-01-24 | output: Drop pending state | Alexander Orzechowski | |
2024-01-23 | backend/wayland: populate pointer axis relative direction | Simon Ser | |
2024-01-23 | seat/pointer: add support for axis_relative_direction event | Simon Ser | |
2024-01-23 | pointer: add support for axis relative direction | Simon Ser | |
2024-01-17 | keyboard: fix type of wlr_keyboard_modifiers.group | Isaac Freund | |
This isn't a breaking change since both of these typedefs are uint32_t but this should make things a bit less confusing for readers. | |||
2024-01-07 | fix outdated comment in wlr_output.h | MaxVerevkin | |
2024-01-03 | wl_drm: add deprecation notice | Simon Ser | |
2024-01-03 | region: add docs for wlr_region_scale_xy() and wlr_region_confine() | Simon Ser | |
2023-12-30 | backend/drm: save current refresh rate | Simon Ser | |
wlr_output.refresh is populated by core wlr_output, and thus will be zero for a custom mode with an unset refresh rate. Save the refresh rate from the drmModeModeInfo in wlr_drm_connector instead. Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3791 | |||
2023-12-27 | scene: drop wlr_scene_set_presentation() | Simon Ser | |
2023-12-27 | presentation-time: drop wlr_presentation arg | Simon Ser | |
There can only be a single presentation-time global advertised to clients, this it's unnecessary to pass around the wlr_presentation pointer. | |||
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 | |