Implement server side support for SetDesktopSize.

It has some warts, but should be feature complete. Most of the magic happens
in the desktop class though.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3713 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/common/rfb/VNCServerST.h b/common/rfb/VNCServerST.h
index 8e98ba3..320db2f 100644
--- a/common/rfb/VNCServerST.h
+++ b/common/rfb/VNCServerST.h
@@ -78,7 +78,9 @@
 
     // Methods overridden from VNCServer
 
+    virtual void setPixelBuffer(PixelBuffer* pb, const ScreenSet& layout);
     virtual void setPixelBuffer(PixelBuffer* pb);
+    virtual void setScreenLayout(const ScreenSet& layout);
     virtual PixelBuffer* getPixelBuffer() const { return pb; }
     virtual void setColourMapEntries(int firstColour=0, int nColours=0);
     virtual void serverCutText(const char* str, int len);
@@ -225,6 +227,8 @@
     bool needRenderedCursor();
     void checkUpdate();
 
+    void notifyScreenLayoutChange(VNCSConnectionST *requester);
+
     SSecurityFactory* securityFactory;
     QueryConnectionHandler* queryConnectionHandler;
     KeyRemapper* keyRemapper;