xdg-desktop-portal-wlr v0.6.0 This new release adds a lot of new features: - Support for DMA-BUF: this allows consumers to request GPU buffers, improving performance significantly. - Support for 10-bit color formats. - Support for PipeWire's swapchain, removing one buffer copy operation. The release includes a lot of internal refactoring as well. Full commit history below. Alias Gram (1): chore(logging): change config file error to info Birger Schacht (1): Fix typo Guido Günther (1): Add phosh to portal's UseIn list Quantum (2): Add support for 10-bit colour formats Implement xdpw_format_pw_strip_alpha for 10-bit colour Simon Ser (1): build: bump version to 0.6.0 columbarius (64): screencast: pipewire add functions to dequeue and enqueue a buffer screencast: use dequeue/enqueue functions instead of on_process event to interact with pipewire screencast: remove pipewire on_event callback screencast: pipewire add import_wl_shm_buffer function screencast: rename xdpw_frame into xdpw_screencopy_frame screencast: only restart wlroots loop if stream is active screencast: implement buffer property checks wrt. xdpw_frame and xdpw_screencopy_frame screencast: use pipewire buffers directly for wlroots screencopy screencast: cleanup screencopy_frame screencast: only end the fps measurement when it was started before screencast: reorder screencopy callbacks screencast: introduce xdpw_frame_state and xdpw_wlr_stream_finish screencast: drop imported PipeWire buffer on remove_buffer screencast: don't fail when copy_buffer was unsuccessfull screencast: mark buffer as invalid when screencopy fails screencast: use asserts for fatal errors meson: bump required pipewire version to 0.3.34 screencast: use the pipewire callback process to start screencast screencast: bump the prefered amount of pipewire buffers to 4 screencast: fix missing return value assignement screencast: fix check on loop_iterate build: define _GNU_SOURCE for PipeWire 0.3.49 screencast: don't use the PipeWire event to trigger screencast session: destroy screencast_instance directly when paused screencast: rename screencopy_frame to screencopy_frame_info screencast: introduce xdpw_buffer screencast: restructure the screencopy flow screencast: relax buffer flip screencast: use drm format instead of wl_shm screencast: disable instance sharing screencast: introduce build_formats screencast: add build_buffer function screencast: introduce buffer_type screencast: implement wlr_frame_linux_dmabuf screencast: support modifiers in build_format builds: add gbm and libdrm to the build environment screencast: create gbm device protocols: add wayland protocol linux-dmabuf-unstable-v1 screencast: add linux_dmabuf to registry screencast: allocate dmabuf with implicit modifier screencast: announce implicit modifier via PipeWire screencast: add option to force implicit modifier to be linear screencast: HACK set an arbitrary chunk size for dmabufs screencast: improve logging for pipewire events screencast: remove swap_buffer function screencast: enqueue pipewire when screencopy failed screencast: support multiplane buffers with xdpw_buffer screencast: support allocation of buffers with explicit modifiers screencast: check if pipewire returns a modifier list screencast: fixate modifier from PipeWire format negotiation result screencast: stop assuming that allocation with implicit modifier works screencast: get supported format modifier pairs from wlroots screencast: add function to query supported modifiers for a format screencast: announce supported explicit modifiers screencast: Remove MESA hack from the old gbm api fallback protocols: Use protocols from the wayland-protocols dependency meson: bump version and replace deprecated functions screencast: use dmabuf_feedback screencast: skip duplicated format-modifier pairs screencast: fix handler logging for tranche_formats screencast: use wl_array for format-modifier-pairs screencast: destroy session if output is removed screencast: send pesentation timestamp via PipeWire screencast: check if a valid format was received from wlr_screencopy