[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/5] vnc: factor out vnc_desktop_resize()
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 1/5] vnc: factor out vnc_desktop_resize() |
Date: |
Tue, 25 May 2010 18:25:16 +0200 |
Signed-off-by: Gerd Hoffmann <address@hidden>
---
vnc.c | 24 ++++++++++++++++--------
1 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/vnc.c b/vnc.c
index 11ae3e5..aaebe24 100644
--- a/vnc.c
+++ b/vnc.c
@@ -514,6 +514,21 @@ void buffer_append(Buffer *buffer, const void *data,
size_t len)
buffer->offset += len;
}
+static void vnc_desktop_resize(VncState *vs)
+{
+ DisplayState *ds = vs->ds;
+
+ if (vs->csock == -1 || !vnc_has_feature(vs, VNC_FEATURE_RESIZE)) {
+ return;
+ }
+ vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE);
+ vnc_write_u8(vs, 0);
+ vnc_write_u16(vs, 1); /* number of rects */
+ vnc_framebuffer_update(vs, 0, 0, ds_get_width(ds), ds_get_height(ds),
+ VNC_ENCODING_DESKTOPRESIZE);
+ vnc_flush(vs);
+}
+
static void vnc_dpy_resize(DisplayState *ds)
{
int size_changed;
@@ -542,14 +557,7 @@ static void vnc_dpy_resize(DisplayState *ds)
QTAILQ_FOREACH(vs, &vd->clients, next) {
vnc_colordepth(vs);
if (size_changed) {
- if (vs->csock != -1 && vnc_has_feature(vs, VNC_FEATURE_RESIZE)) {
- vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE);
- vnc_write_u8(vs, 0);
- vnc_write_u16(vs, 1); /* number of rects */
- vnc_framebuffer_update(vs, 0, 0, ds_get_width(ds),
ds_get_height(ds),
- VNC_ENCODING_DESKTOPRESIZE);
- vnc_flush(vs);
- }
+ vnc_desktop_resize(vs);
}
if (vs->vd->cursor) {
vnc_cursor_define(vs);
--
1.6.6.1
- [Qemu-devel] [PATCH 0/5] vnc: desktop size patches., Gerd Hoffmann, 2010/05/25
- [Qemu-devel] [PATCH 2/5] vnc: send desktopresize event as reply to set encodings, Gerd Hoffmann, 2010/05/25
- [Qemu-devel] [PATCH 1/5] vnc: factor out vnc_desktop_resize(),
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 4/5] vnc: don't send invalid screen updates., Gerd Hoffmann, 2010/05/25
- [Qemu-devel] [PATCH 3/5] vnc: keep track of client desktop size, Gerd Hoffmann, 2010/05/25
- [Qemu-devel] [PATCH 5/5] vnc: move size-changed check into the vnc_desktop_resize function., Gerd Hoffmann, 2010/05/25
- Re: [Qemu-devel] [PATCH 0/5] vnc: desktop size patches., Daniel P. Berrange, 2010/05/26