Selections are automatically shared with back-end servers. This provides
seamless communication between back-end server clients and local clients.
Some selections are not appropriate to share as they will cause
unwanted conflicts. E.g. most manager selections. These selections
can still be shared by adding a unique identifier to them. Selections
that need this identifier can be specified using a command line option.
Collect sync request for during the sync interval time just
like before but instead of using XSync to send get-input-focus
requests and block for replies when the sync interval timer
fires, we're now just sending get-input-focus requests using
XCB and give each back-end server the sync-interval time to
respond before we block.
This provides significantly better performance, especially
with high latency connections.
The default sync batch interval of 100ms provides good
performance for back-ends servers with round-trip times
somewhat less than 100ms and is not long enough to make
the batch processing noticeably on low latency connections.