Releases: emersion/xdg-desktop-portal-wlr
Releases · emersion/xdg-desktop-portal-wlr
0.7.1
xdg-desktop-portal-wlr v0.7.1 David Turner (2): Handle pipewire restarts Fix bug in sd-bus polling Jan Beich (1): build: limit epoll-shim to timerfd Simon Ser (5): man: refer to wl_output instead of zxdg_output_manager_v1 build: drop wayland-scanner find_program() fallback build: drop unnecessary array build: use / instead of join_paths() build: bump version to 0.7.1 columbarius (2): contrib: Add portals config example screencast: Add support for 24bit RGB formats cptpcrd (2): screencast: fix source type screencast: report correct position/size using xdg-output
0.7.0
xdg-desktop-portal-wlr v0.7.0 Ferdinand Bachmann (1): screencast: set type of all planes, not only first plane Linken Dinh (1): add Hyprland to wlr.portal Nick Cao (1): scdoc: mark as build-time dependency Simon Ser (2): readme: restrict build badge to commits in the master branch build: bump version to 0.7.0 columbarius (14): screenshot: Announce version property screencast: remove xdg-output protocol screencast: add fallback for linear modifier screencast: Send buffer transform information via PipeWire screenshot: announce version 1 screencast: Use spa_pod_dynamic_builder screencast: Make output functions private screencast: Introduce xdpw_screencast_target screencast: Redesign chooser api to use xdpw_screencast_target screencast: support portal version 3 screencast: Introduce screencast_session_data screencast: Implement restore token screencast: Add envar to set allowed persist mode screencast: send damage via PipeWire
0.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
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
0.5.0
xdg-desktop-portal-wlr v0.5.0 This release contains a handful of bug fixes and minor improvements. GermainZ (1): Fix potential memory corruption when reading bools Jan Beich (1): ci: drop FreeBSD workaround after 22af25749e29 Simon Ser (3): build: bump version to 0.4.0 Handle POLLHUP build: bump version to 0.5.0 Tobias Langendorf (1): Fix exec_before/after leaving a zombie process behind columbarius (16): config: handle missing HOME env variable gracefully screencast: limit screencast framerate by output framerate screencast: respect the maximal framerate negotiated by pipewire screencast: don't rely on the structure of xdpw_screencast_instance to convert formats pipewire: move enumformat creation into seperate function pipewire: add the striped format inside of build_format pipewire: stop announcing a range as the video size screencast: add logging to pwr_handle_stream_param_changed in pipewire_sreencast.c screencast: create pwr_update_stream_param screencast: update pipewire params on buffer change screencast: announce supported buffer type screencast: pipewire add {add,remove}_buffer handler screencast: pipewire move buffer information from pwr_on_event to pwr_handle_stream_add_buffer screencast: pipewire remove uneeded PW_STREAM_FLAG_MAP_BUFFERS flag screencast: pipewire change to self allocation of shm buffers screencast: fix pipewire default id_node
0.4.0
xdg-desktop-portal-wlr v0.4.0 This release contains a few improvements and some bug fixes. Note for packagers: the iniparser dependency has been replaced with inih. Note for users: some CLI options have been replaced with config options. Quotes in the config file are no longer allowed. Simon Ser (7): Remove -o and -f options Add wlroots to portal manifest UseIn list Add -r flag to slurp readme: update "Manual startup" section readme: add dbus-update-activation-environment command contrib/systemd: add ConditionEnvironment readme: update IRC channel Stefano Ragni (1): wlr_screencast: fix return value on cmd failure Tobias Jakobi (4): screencast: bring function names in line with the wlroots guidelines screencast: protect against NULL stream in xdpw_pwr_stream_destroy() screencast: improve cleanup on error in xdpw_screencast_init() screencast: move xdpw_pwr_stream_destroy() up Tobias Langendorf (2): screenshot: implement `interactive` option screenshot: implement PickColor method columbarius (10): wlr_screencopy: make sure xdg_output_manager is supported Revert "screencast: workaround corrupted output_list" config: use inih instead if iniparser doc: remove quotes from samples config: add missing keys to print_config screencast: add prompt to dmenu style default choosers config: fix memory leak config_home_fallback config: parse XDG_CURRENT_DESKTOP as a list doc: add note about the list character of env XDG_CURRENT_DESKTOP config: fix format specifier for max_fps
0.3.0
xdg-desktop-portal-wlr v0.3.0 Aleksei Bavshin (1): Fix gcc warnings on invalid `free` call Dan Shick (1): Update CI config to build man pages David96 (1): Add exec_before and exec_after Simon Ser (12): Fix segfault in config_parse_file Fix whitespace issues in meson.build Drop /etc/xdg-desktop-portal-wlr/ from config file dirs Constify config_path arguments Don't use ~/.config when XDG_CONFIG_HOME is set Add man page readme: don't show PR status in CI badge ci: add /usr/local to search paths on FreeBSD build: remove intermediate static library build: remove dirs from iniparser find_library() call build: use has_headers in find_library() Bump to v0.3.0 Stefano Ragni (1): pipewire: Fix building EnumFormat spa object Zsolt Donca (1): Control how many frames are captured per second columbarius (8): Add support for config file screencast: add outputchooser with config option man: add entry for chooser_cmd and chooser_type screencast: workaround corrupted output_list wlr_screencast: create clean xdpw_wlr_output and free on remove wlr_screencast: call wlr_remove_output only if global is an output wlr_screencast: add xdg_output_listener after output registration if possible wlr_screencast: remove wl_display_dispatch danshick (1): Fix link to trigger-screen-shot.py
0.2.0
xdg-desktop-portal-wlr v0.2.0 Christopher Snowhill (1): Add Wayfire to portal UseIn list, as it is also supported Isaac Freund (1): Add river to portal UseIn list Jan Beich (4): build: introduce sd-bus-provider option build: add basu as sd-bus provider screencast: prefix macros to avoid conflict with system definitions ci: add FreeBSD job Manuel Romei (1): Revert "Remove unnecessary check from wlr_screencast.c" (#54) Marian Buschsieweke (4): core: fix error handling in main core/main: Add static qualifier to internal func core/main: Use EXIT_FAILURE / EXIT_SUCCESS core/main: Clean up option handling Maxim Baz (1): systemd: ensure service is stopped on exit of graphical session Simon Ser (3): Fix freeze on skipped frame Remove extraneous whitespace Add --replace flag Tobi Fuhrimann (1): Link official Arch Linux package in readme columbarius (19): Destroy wlr_buffer only on quit or error in wlr_screencast.c Only recreate simple_frame on change in wlr_screencast.c munmap simple_frame.data only if needed in wlr_screencast.c Fix log messages in wlr_screencast.c Refresh buffer on change in wlr_screencast.c Change refresh logic and add tests in wlr_screencast.c Add functions to clean simple_buffer.{data,buffer} in wlr_screencast.c Remove unecessary checks in wlr_screencast.c Change loglevel for existing buffer in wlr_screencast.c Add comments to wlr_frame_buffer_clear in wlr_screencast.c Rename wlr_frame_buffer_clear to wlr_frame_buffer_destroy in wlr_screencast.c Remove TODO from wlr_sreencast.c Remove unnecessary check from wlr_screencast.c Fix linewidth in wlr_screencast.c Add pipewire buffers_dataType parameter in pipwire_screencast.c Bump minimum pipewire version Update to wlr-screencopy-unstable-v1 version 3 Remove SPA_PARAM_BUFFERS_dataType Fix cursor_mode checks in screencast.c danshick (2): Update contrib to mention XDG_DESKTOP_PORTAL_DIR Update README to include repology badge
0.1.0
xdg-desktop-portal-wlr v0.1.0 This is the first xdg-desktop-portal-wlr release. It supports screenshots and screencasts. Aleksei Bavshin (1): Add D-Bus and systemd service files Dan Shick (12): Add yml exception to editorconfig Add thread for wlr screensharing Use variable framerate, add CLI option to override pixelformat metadata Add xdg_output protocol for output selection Add proper logging Remove thread for pipewire and all locking. Add support for elogind in meson. Add proper event loop. Remove last threads. Update CI with pipewire. Fix CI with libpipewire02, libdrm. Remove png.h unused import. Cleanup style. Add pipewire 0.3 support. Workaround pipewire bugs. Remove pipewire workarounds after upstream fix Check cast instance refcount before attaching Globally define _POSIX_C_SOURCE in meson.build Fix musl issue with time.h James Edwards-Jones (2): Use sd_bus_message_append shorthand for screenshot Add tooling to README Simon Ser (11): readme: add links, improve formatting Add session boilerplate ci: add .build.yml readme: add CI badge build: disable some annoying warnings Import .editorconfig from wlroots ci: add Alpine build (#30) Advertise format with alpha channel stripped Remove --pixelformat flag Replace void * with correct type in start_screencast build: bump version to 0.1.0 danshick (2): Screencast session support (#22) Add documentation emersion (5): Initial commit First commit Add D-Bus boilerplate for Screenshot Invoke grim when taking screenshot Add missing request.c obayemi (1): build: add missing libdrm dependency