Skip to content

Add a non-X11 function to send the guest resolution to the daemon/server.

Julien Ropé requested to merge jrope/vd_agent:split_code into master

The purpose here is to further separate X11-specific code, and have the actual sending to the daemon to be out of X11, and reusable by other APIs.

  • Replace vdagent_x11_send_daemon_guest_res() with a function that builds and returns the list of monitor resolutions.
  • Create the vdagent_display_send_daemon_guest_res() that uses this to send the resolutions to the daemon.
  • Call vdagent_display_send_daemon_guest_res() wherever needed

V2: This is a different approach, where vdagent_x11_do_read() is not modified. The rationale is that rather than returning a list of handled events, and have the caller decide to update the daemon with new resolutions or not, we will directly call the "vdagent_display_send_daemon_guest_res()" function where required.

The reason of the change is that my initial approach could work as long as the X11 Clipboard code was not used - which was the case when building with GTK initially. But now that we've decided to use X11 for the clipboard, vdagent_x11_do_read() is called in many more places, and I don't want to modify them all to check if a monitor event was handled, and update the daemon if needed.

Edited by Julien Ropé

Merge request reports