]> source.dussan.org Git - tigervnc.git/commit
VNCServerST: Add a timeout to pointer button ownership 1718/head
authorMike Looijmans <mike.looijmans@topic.nl>
Tue, 16 Jan 2024 15:27:43 +0000 (16:27 +0100)
committerMike Looijmans <mike.looijmans@topic.nl>
Mon, 22 Jan 2024 13:55:03 +0000 (14:55 +0100)
commit71c83b479335337b25dc331d3fb4a6e29382ceb5
tree0166c65ac181c9cc809375b1e8680e94c44cbbdd
parent986280b382d57ef4f68d2d4afb13b26772e5acb0
VNCServerST: Add a timeout to pointer button ownership

When one clients holds down a button on the pointer device (probably
dragging something), other clients' attempts at pointer operations
are denied. This yields a sane user experience, but with limits.

When one clients starts dragging, and then his network connection fails,
other clients are denied access to the pointer until the VNC server
finally discovers that the connection is dead and closes it. This can
take about 15 minutes.

Add a timeout to this policy: If we don't hear from the client for 3
seconds, other clients are allowed to control the pointer once more.

This solves the problem that one failing network could make the server
completely deaf to other clients for a long time.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
common/rfb/VNCServerST.cxx
common/rfb/VNCServerST.h