summaryrefslogtreecommitdiff
path: root/ui/vnc.h
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2017-12-18 19:12:21 +0000
committerGerd Hoffmann <kraxel@redhat.com>2018-01-12 13:48:54 +0100
commitfef1bbadfb2c3027208eb3d14b43e1bdb51166ca (patch)
treea928a072bbb3b2c04cf8bc320a73254591f56917 /ui/vnc.h
parent8f61f1c5a6bc06438a1172efa80bc7606594fa07 (diff)
downloadqemu-fef1bbadfb2c3027208eb3d14b43e1bdb51166ca.tar.gz
ui: introduce enum to track VNC client framebuffer update request state
Currently the VNC servers tracks whether a client has requested an incremental or forced update with two boolean flags. There are only really 3 distinct states to track, so create an enum to more accurately reflect permitted states. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Reviewed-by: Darren Kenny <darren.kenny@oracle.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-id: 20171218191228.31018-7-berrange@redhat.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'ui/vnc.h')
-rw-r--r--ui/vnc.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/ui/vnc.h b/ui/vnc.h
index 694cf32ca9..b9d310e640 100644
--- a/ui/vnc.h
+++ b/ui/vnc.h
@@ -252,6 +252,12 @@ struct VncJob
QTAILQ_ENTRY(VncJob) next;
};
+typedef enum {
+ VNC_STATE_UPDATE_NONE,
+ VNC_STATE_UPDATE_INCREMENTAL,
+ VNC_STATE_UPDATE_FORCE,
+} VncStateUpdate;
+
struct VncState
{
QIOChannelSocket *sioc; /* The underlying socket */
@@ -264,8 +270,7 @@ struct VncState
* vnc-jobs-async.c */
VncDisplay *vd;
- int need_update;
- int force_update;
+ VncStateUpdate update; /* Most recent pending request from client */
int has_dirty;
uint32_t features;
int absolute;