From e9962f723139b39b7d389d5344cc54a16a7bd0be Mon Sep 17 00:00:00 2001 From: Pierre Ossman Date: Thu, 23 Apr 2009 12:31:42 +0000 Subject: Send desktop layout changes separately Make sure we send any modifications to the desktop layout in a message that does not modify the framebuffer data. This is required to make sure we have a valid state on the client as it drops the framebuffer when it recieves a framebuffer dimension change. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3787 3789f03b-4d11-0410-bbf8-ca57d06f2519 --- common/rfb/SMsgWriter.cxx | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'common/rfb/SMsgWriter.cxx') diff --git a/common/rfb/SMsgWriter.cxx b/common/rfb/SMsgWriter.cxx index f3079eed..1695161f 100644 --- a/common/rfb/SMsgWriter.cxx +++ b/common/rfb/SMsgWriter.cxx @@ -114,6 +114,11 @@ int SMsgWriter::getNumRects(const Rect &r) return encoders[encoding]->getNumRects(r); } +bool SMsgWriter::needFakeUpdate() +{ + return false; +} + // FIXME: This functions is not used because it incorrectly computes // the number of rectangles if the Tight encoder is used. /* @@ -126,6 +131,17 @@ void SMsgWriter::writeFramebufferUpdate(const UpdateInfo& ui, ImageGetter* ig, } */ +bool SMsgWriter::needNoDataUpdate() +{ + return false; +} + +void SMsgWriter::writeNoDataUpdate() +{ + // This class has no pseudo-rectangles so there is nothing to do here + vlog.error("writeNoDataUpdate() called"); +} + void SMsgWriter::writeRects(const UpdateInfo& ui, ImageGetter* ig, Region* updatedRegion) { @@ -148,12 +164,6 @@ void SMsgWriter::writeRects(const UpdateInfo& ui, ImageGetter* ig, } } - -bool SMsgWriter::needFakeUpdate() -{ - return false; -} - bool SMsgWriter::writeRect(const Rect& r, ImageGetter* ig, Rect* actual) { return writeRect(r, cp->currentEncoding(), ig, actual); -- cgit v1.2.3