Skip to content
Tags give the ability to mark specific points in history as being important
  • v0.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
    
  • v0.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
    
  • v0.6.0
    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
    
  • v0.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
    
  • v0.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
    
  • v0.3.0
    9f7e59c8 · Bump to v0.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
    
  • v0.2.0
    e103e120 · Bump to v0.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
    
  • v0.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