v0.9.0
Highlights
- The new ext-image-copy-capture-v1 protocol has been implemented for output
capturing. - A file descriptor created by a parent process can be used for listening for
new connections, thanks to Attila Fidan. - Clipboard handling has been made more robust, thanks again to Attila Fidan.
- WayVNC can now allocate CMA backed pixel buffers. They are required for
hardware encoding on Raspberry Pi. - Keyboard LED state can be passed to clients.
See Neat VNC's release notes for more highlights.
Bug fixes
- Output power management is now only enabled while capturing.
Acknowledgments
Special thanks go to Raspberry Pi Ltd. for sponsoring some of the work that's
gone into this release. If you run a business and would like to accelerate the
development of this project, feel free to contact me.
Shortlog
Andri Yngvason (61):
README: Use ECDSA instead of RSA
ctl: Emit event when output is added/removed
meson: Bump version to 0.9
buffer: Allocate DMA-BUFs via CMA where available
util: Add ALIGN_UP macro
buffer: Align CMA buffers up to nearest multiple of 16
FUNDING.yml: Add github sponsors
test: integration: Disable multi-output test
buffer: Only include linux/dma-heap.h where available
README: Update builds.sr.ht badge path
keyboard: Pass keyboard LED state to client
Initialise VNC last
buffer: Fix dma head feature guard macros
Fix show-performance option name
Manage power only during capturing
table-printer: Make left column width constant
main: Make external-listener-fd option boolean
ctl-client: Remove unused code
buffer: Create a global buffer registry
Move calculate_region_area to pixels.c
Create abstract screencopy interface
Implement ext-image-copy-capture-v1
protocols: Add ext-foreign-toplevel-list-v1
ext-image-copy-capture: Remove bogus header
Use render node supplied by ext-image-copy-capture
buffer: Save render node device id into buffer
ext-image-copy-capture: Pass modifiers
ext-image-copy-capture: Release pointer object after use
Clean up various memory leaks
README: Update sr.ht build status badge
buffer: Remove use of major()/minor()
.gitignore: Add sandbox directory
cfg: Fix double-free on failure
buffer: Keep gbm device alive while buffer lives
output-management: Destroy config head objects
ext-image-copy-capture: Add pts
buffer: Fix build with disable dmabuf
image-copy-capture: Fix unused variable warning
main: Remove unused variable
main: Fix show-performance option
Order command line options by the alphabet
Add option to disable resizing
buffer: Fix copying of modifiers from config
buffer: Pass multi-planar buffers to compositor
buffer: Fix error check in gbm device creation
buffer: Log a debug message when reconfiguring
ext-image-copy-capture: Select optimal format & modifier
ext-image-copy-capture: Split buffer config into smaller functions
ext-image-copy-capture: Check if preferred format changed on every frame
ext-image-copy-capture: Remove superfluous logging
Add missing ifdefs for screencopy-dmabuf
man: Alphabetise options
man: Add missing command line options
output-management: Fix unused variable warning in release build
ext-image-copy-capture: Fix unused variable warning in release build
meson: Fix deprecation warnings
man: Fix repeated words
buffer: Fix result type in find_render_node
buffer: Don't open render node for shm
ext-image-copy-capture: Fall back to SHM if DMA-BUF pool config fails
main: Stop capture retry timer when detaching
Attila Fidan (16):
FAQ: Add example disabling floating_modifier in passthrough mode
main: Use info.address_storage to compose client addr strings
main: Fix transient-seat option naming in an error
man: Fix inconsistent spacing between short/long opts
main: Allow starting server from a bound socket fd
data-control: Ignore our own offers via custom MIME type
data-control: Stop receive handlers on destroy
data-control: Directly reference server in receive_context
main: Ignore SIGPIPE signal
data-control: Do error checking for read/write
data-control: Set O_NONBLOCK on the receive and send fd
data-control: Fallback to asynchronous source send
data-control: Destroy offer object in selection callback
data-control: Dedup common cleanup code
data-control: Remove unnecessary wl_display_flush()
main: Fix double nvnc_close()
Jan Beich (1):
ctl: Add missing header after 42494fbbe463
Ontje Lünsdorf (1):
main: Do not access screencopy in detached mode
Simon Ser (1):
meson: Specify check arg in run_command()
guylamar2006 (1):
Fix node16 deprecation error