diff options
author | Pierre Ossman <ossman@cendio.se> | 2009-04-22 15:37:51 +0000 |
---|---|---|
committer | Pierre Ossman <ossman@cendio.se> | 2009-04-22 15:37:51 +0000 |
commit | 53125a76e9f7a1f8de65c802fba2741559345788 (patch) | |
tree | a8bd4ebd1e06cdc140334d89111e0e4651c907aa | |
parent | 989dbd1ee9289bc486018fc53b576ed9dfe29d8c (diff) | |
download | tigervnc-53125a76e9f7a1f8de65c802fba2741559345788.tar.gz tigervnc-53125a76e9f7a1f8de65c802fba2741559345788.zip |
UltraVNC sends a new non-incr. FUR when it gets a DesktopSize rect, and
TightVNC drops the framebuffer, so we can't realistically send it every
non-incr FUR. Besides, the client needs to keep track of framebuffer
dimensions anyway.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3786 3789f03b-4d11-0410-bbf8-ca57d06f2519
-rw-r--r-- | common/rfb/VNCSConnectionST.cxx | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/common/rfb/VNCSConnectionST.cxx b/common/rfb/VNCSConnectionST.cxx index fdcea883..cc7c9e8e 100644 --- a/common/rfb/VNCSConnectionST.cxx +++ b/common/rfb/VNCSConnectionST.cxx @@ -522,9 +522,15 @@ void VNCSConnectionST::framebufferUpdateRequest(const Rect& r,bool incremental) // Non-incremental update - treat as if area requested has changed updates.add_changed(reqRgn); server->comparer->add_changed(reqRgn); - // And update the clients view of screen layout - writer()->writeSetDesktopSize(); + + // And send the screen layout to the client (which, unlike the + // framebuffer dimensions, the client doesn't get during init) writer()->writeExtendedDesktopSize(); + + // We do not send a DesktopSize since it only contains the + // framebuffer size (which the client already should know) and + // because some clients don't handle extra DesktopSize events + // very well. } } |