vnc: add support for extended desktop resize
commit763deea7e906321f8ba048c359f168f60d51c14e
authorGerd Hoffmann <kraxel@redhat.com>
Tue, 12 Jan 2021 13:41:20 +0000 (12 14:41 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Fri, 15 Jan 2021 10:22:43 +0000 (15 11:22 +0100)
tree793da1d43772f73043b28fdb413c926b81a487d4
parent9e1632ad07ca49de99da4bb231e9e2f22f2d8df5
vnc: add support for extended desktop resize

The extended desktop resize encoding adds support for (a) clients
sending resize requests to the server, and (b) multihead support.

This patch implements (a).  All resize requests are rejected by qemu.
Qemu can't resize the framebuffer on its own, this is in the hands of
the guest, so all qemu can do is forward the request to the guest.
Should the guest actually resize the framebuffer we can notify the vnc
client later with a separate message.

This requires support in the display device.  Works with virtio-gpu.

https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#extendeddesktopsize-pseudo-encoding

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-id: 20210112134120.2031837-4-kraxel@redhat.com
ui/vnc.c
ui/vnc.h