* color-management-v1 for HDR10 support (note, renderer and backend bits have not yet been merged)
* ext-image-capture-source-v1 and ext-image-copy-capture-v1 for next-generation screen capture
* ext-data-control-v1 for clipboard managers as a copy of the wlr-protocols version
* xdg-toplevel-icon-v1 for customized per-toplevel icons
* xdg-dialog-v1 for marking toplevels as dialogs
* xdg-system-bell-v1 for ringing the system bell
* ext-idle-notify-v1 minor version 2 for activity trackers
* presentation-time minor version 2 for improved variable refresh rate support
* wlr-layer-shell-v1 minor version 5 for setting the edge of an exclusive zone
* Explicit synchonization support in backends and renderers
* Multi-GPU support for display-only devices (e.g. USB-based such as gud)
* Direct scanout in backends now supports cropping and scaling buffers
* Scene-graph improvements: optimizations (e.g. skip rendering of opaque black backgrounds),
* transparent restacking for X11 windows, new helper for wlr-gamma-control-v1 support
* HTML documentation is now published on GitLab Pages: https://wlroots.pages.freedesktop.org/wlroots/
* A new udmabuf allocator has been introduced, for use with software GL and Vulkan implementations such
as llvmpipe and lavapipe
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=80
- Update to version 0.18.1:
* wlr_scene: Force blend mode to PREMULTIPLIED if calculate visibility is disabled
* wlr_scene: Funnel all damage operations through scene_output_damage
* wlr_scene: Immediately apply pending output commit damage
* wlr_scene: Inline output_state_apply_damage
* wlr_scene: Don't special case swapchain buffers
* wlr_scene: Fix WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT when output is transformed
* ext-foreign-toplevel-list: use correct interface and add missing handler
* backend/drm: fix a use-after-free
* wlr_output: remove dead function
* docs: update comments for wlr_output API changes
* backend/drm: don't set vsync present flag if page flip was async
* output-power-management: send zwlr_output_power_v1.failed on output destroy
* xdg-popup: don't set a role resource destroy handler
* pointer-constraints: don't init/finish current/pending states
* linux-drm-syncobj: add missing decls in the header
* backend/wayland: process initial events from globals correctly
* scene: update output geom on commit after dropping pending damage
* scene: resize damage ring on geometry update
* linux-drm-syncobj-v1: actually use the requested version
* backend/drm: use CRTCs in-order
* render/vulkan: use non-coherent memory for read_pixels()
* build: bump version to 0.18.1
* render/vulkan: Fix draw rect clip region invalid in blend none mod
* Fix memory leak in drm.c
* Fix memory leak in xwayland.c
* xwayland/xwm: listen shell destroy signal
OBS-URL: https://build.opensuse.org/request/show/1202330
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wlroots?expand=0&rev=34
* wlr_scene: Force blend mode to PREMULTIPLIED if calculate visibility is disabled
* wlr_scene: Funnel all damage operations through scene_output_damage
* wlr_scene: Immediately apply pending output commit damage
* wlr_scene: Inline output_state_apply_damage
* wlr_scene: Don't special case swapchain buffers
* wlr_scene: Fix WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT when output is transformed
* ext-foreign-toplevel-list: use correct interface and add missing handler
* backend/drm: fix a use-after-free
* wlr_output: remove dead function
* docs: update comments for wlr_output API changes
* backend/drm: don't set vsync present flag if page flip was async
* output-power-management: send zwlr_output_power_v1.failed on output destroy
* xdg-popup: don't set a role resource destroy handler
* pointer-constraints: don't init/finish current/pending states
* linux-drm-syncobj: add missing decls in the header
* backend/wayland: process initial events from globals correctly
* scene: update output geom on commit after dropping pending damage
* scene: resize damage ring on geometry update
* linux-drm-syncobj-v1: actually use the requested version
* backend/drm: use CRTCs in-order
* render/vulkan: use non-coherent memory for read_pixels()
* build: bump version to 0.18.1
* render/vulkan: Fix draw rect clip region invalid in blend none mod
* Fix memory leak in drm.c
* Fix memory leak in xwayland.c
* xwayland/xwm: listen shell destroy signal
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=76
- Update to version 0.18.0:
* render/pixman: Improve transform performance
* render/pixman: Fix non-uniform scale with rotation
* wlr_surface: update get_root_surface() docs
* output: reset hardware_cursor on failure
* scene: fix double scaling of opaque region for blend mode optimization
* xdg-toplevel: allow edge_none for resizing
* output: extract hardware cursor disabling logic
* output: disable hardware cursor when falling back to software
* render/vulkan: fix texture clip region leak
* render/vulkan: free pipeline layouts on destroy
* render/vulkan: free render format setups on destroy
* backend/x11: send correct keyboard layout
* xdg-popup: don't emit parent's new_popup signal too early
* xdg-popup: validate positioner on reposition request
* input-method: unmap popup surfaces on deactivate
* backend/wayland: destroy ignored tablet proxies
* backend/drm: add support for libliftoff v0.5.0
* render/vulkan: don't use UNDEFINED layout for imported DMA-BUFs
* build: bump version to 0.17.4
* wlr_pointer_gestures_v1: init destroy signal
* wlr_pointer_gestures_v1: emit destroy signal in destroy function
* backend/libinput: Fix call of handle_libinput_readable() when WLR_LIBINPUT_NO_DEVICES is set
OBS-URL: https://build.opensuse.org/request/show/1188908
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=71
- Update to version 0.17.1:
* backend/x11: don't send ConfigureRequest with the same size
* backend/x11: check buffer format in output_test()
* tinywl: fix wlroots dependency constraint in Makefile
* viewporter: rename state var in viewport_handle_surface_commit()
* viewporter: listen to client_commit
* viewporter: fix src buffer bounds check
* render/egl: fallback to GBM FD if EGLDevice is not available
* render: disable linux-dmabuf without DRM FD
* cursor: send surface scale events
* cursor: fix initial cursor position for new outputs
* xcursor: fix duplicate cursor check check in load_callback()
* input-method-v2: drop unnecessary variable and cast
* output-layout: fix missing global for outputs with a custom mode
* build: bump vesion to 0.17.1
* types/output: emit destroy event before destroying global
* input-method-v2: free current strings on commit
* input-method-v2: validate commit serial
OBS-URL: https://build.opensuse.org/request/show/1135923
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wlroots?expand=0&rev=29
* backend/x11: don't send ConfigureRequest with the same size
* backend/x11: check buffer format in output_test()
* tinywl: fix wlroots dependency constraint in Makefile
* viewporter: rename state var in viewport_handle_surface_commit()
* viewporter: listen to client_commit
* viewporter: fix src buffer bounds check
* render/egl: fallback to GBM FD if EGLDevice is not available
* render: disable linux-dmabuf without DRM FD
* cursor: send surface scale events
* cursor: fix initial cursor position for new outputs
* xcursor: fix duplicate cursor check check in load_callback()
* input-method-v2: drop unnecessary variable and cast
* output-layout: fix missing global for outputs with a custom mode
* build: bump vesion to 0.17.1
* types/output: emit destroy event before destroying global
* input-method-v2: free current strings on commit
* input-method-v2: validate commit serial
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=65
- Adjust libdir and includedir to wlroots-<version>
- Update to version 0.17.0
* New protocol implementations:
- content-type-v1 to tag surfaces with their content type (audio, video,
- game, etc).
- xwayland-shell-v1 to improve XWayland reliability.
- wp-fractional-scale-v1 to allow clients to submit buffers with a
- non-integer scale factor matching the output.
- tearing-control to allow clients to opt-in for tearing page-flips.
- security-context-v1 to identify clients running in sandboxes.
- cursor-shape-v1 for server-side cursor themes.
* Introduce a new output layers API to leverage KMS planes.
* Add a new renderer API with improved design and performance. Add an API to
* query the time taken to render.
* Continued work on the Vulkan renderer: add more RGB formats, add YUV buffers,
* add interoperability with implicit synchronization instead of blocking.
* Add support for the new wl_surface.preferred_buffer_{scale,transform} events.
* Improved scene-graph, including support for linux-dmabuf feedback and
* clipping surfaces.
* Improved wlr_cursor which now keeps track of the current cursor image.
* Add an implementation of the wl_shm interface, replacing libwayland's for
* improved reliability and performance.
* The Wayland backend supports embedding a wlroots compositor inside an
* existing Wayland client.
* wl_surface roles have been refactored.
- Remove fix-frame-number-deprecated.patch. Patch is part of release now.
- Added a new dependencies:
* libdisplay-info-devel
* xwayland-devel
OBS-URL: https://build.opensuse.org/request/show/1133830
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=60
- update to 0.16.2:
* xcursors: Alias existing cursor defaults to cursor-spec cursor
names
* xdg-activation: accept pointer focus for new tokens
* xwayland/xwm: unpair even if surface is NULL
* backend/x11: fix delta_discrete value
* backend/x11: fix initial value of wlr_x11_buffer.n_busy
* backend/drm: disable all CRTCs after VT switch
* render/vulkan: fix vkCmdClearAttachments validation error
* backend/drm: set "max bpc" property based on pixel format
* xdg-shell: reset added/committed flag on unmap
* backend/wayland: don't cache next item when destroying buffers
* output: don't attach buffer on first commit if disabled
* backend/wayland: allow superseding a previous commit
* backend/wayland: update output mode after commit is done
* render/gles2: default to highp if available
* build: bump version to 0.16.2
* render/vulkan: use correct source offset in read_pixels
OBS-URL: https://build.opensuse.org/request/show/1064382
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=56
- Update to 0.16.0:
* Support for the new ext-session-lock-v1, idle-notify-v1 and
single-pixel-buffer-v1 protocols has been added.
* The scene-graph API has many new features and optimizations.
* CPU readback for Vulkan renderer is now implemented. The Vulkan renderer
should be more stable.
* The input device API has been reworked.
* A new `wlr_damage_ring` helper supersedes wlr_output_damage without being
as invasive.
* Minor version 5 of xdg-shell has been implemented, adding support for popup
repositioning, configure bounds and WM capabilities.
* High-res scroll wheel events are now supported.
* Minor version 4 of wlr_output_management-v1 has been implemented, adding
support for managing adaptive sync (VRR).
* Internal refactoring of the wl_surface and DRM backend code.
- Remove 3456.patch: Merged upstream.
OBS-URL: https://build.opensuse.org/request/show/1035584
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=50
- Update to 0.15.1:
* xdg-foreign: Fix crash on destroy of degenerate surface
* wlr_texture: remove wlr_texture_from_wl_drm() from header
* foreign-toplevel: send enter if needed on output bind
* tinywl: fix check whether client is focused or not
* scene/subsurface_tree: fix handling subsurface destruction
* compositor: damage the whole buffer on viewport src change
* subsurface: unlock cached state on commit if desynced
* backend: error out in autocreate without libinput support
* scene: schedule an output frame on wl_surface.frame
* scene: try to import buffers as textures before rendering
* input_method_v2: improve mapping detection
* render/gles2: don't constrain shm formats to ones that support reading
* vulkan: Fix imported image layout
OBS-URL: https://build.opensuse.org/request/show/956479
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=47
- Update to 0.15.0:
Release highlights:
* A new experimental Vulkan renderer has been merged (manually enabled with
WLR_RENDERER=vulkan).
* A new scene-graph API has been introduced to enable more code-sharing
between compositors.
* Large parts of the backend and renderer APIs have been refactored and
reworked.
* The drm-lease-v1 protocol has been implemented.
* Feedback support has been added to the linux-dmabuf-unstable-v1
implementation, unlocking many zero-copy and multi-GPU optimizations and
features.
* The wlr_output rendering API now supports 10bpc and 16bpc formats.
* The DRM backend now supports hotplugging secondary GPUs at runtime.
* wlr_region and wlr_box are now stable APIs.
OBS-URL: https://build.opensuse.org/request/show/949655
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=46
* surface: accept commits with buffer size not divisible by scale
* buffer: make enum wlr_buffer_cap public
* surface: allow locking pending state in commit handler
* Revert "backend/drm: populate cursor plane's current_fb"
* backend/drm: don't clear pending cursor FB on failed commit
* output: detach buffer from renderer before commit
* output-damage: fix output swapchain handling
* tablet-v2: fix pad and tool object versions
* backend/drm: force linear layout for multi-GPU buffers
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=43
Prepared the update for wlroots 0.14.0.
We should probably wait with accepting this because it looks like it will break sway and cage. So we will need to wait until those projects did a release too I think.
- Update to 0.14.0:
Release highlights:
* Renderer refactoring work is well underway: everything now uses the new
infrastructure under-the-hood except the DRM backend's primary plane.
* The Pixman renderer has been merged, alongside new allocators (shared
memory for Wayland/X11 and DRM dumb buffers).
* Session management is now completely offloaded to libseat.
* Support for the xdg-activation-v1 protocol has been merged.
* For details see: https://github.com/swaywm/wlroots/releases/tag/0.14.0
- Remove logind/systemd dependency and use libseat instead for (e)logind
and seat support
OBS-URL: https://build.opensuse.org/request/show/901643
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/wlroots?expand=0&rev=42