More changes for latest TigerVNC
diff --git a/src/AndroidDesktop.cpp b/src/AndroidDesktop.cpp
index 7539c69..b40b1b4 100644
--- a/src/AndroidDesktop.cpp
+++ b/src/AndroidDesktop.cpp
@@ -12,7 +12,6 @@
 #include <rfb/PixelFormat.h>
 #include <rfb/Rect.h>
 #include <rfb/ScreenSet.h>
-#include <rfb/VNCServerST.h>
 
 #include "AndroidDesktop.h"
 #include "AndroidPixelBuffer.h"
@@ -41,7 +40,7 @@
 void AndroidDesktop::start(rfb::VNCServer* vs) {
     mMainDpy = SurfaceComposerClient::getBuiltInDisplay(ISurfaceComposer::eDisplayIdMain);
 
-    mServer = (rfb::VNCServerST*)vs;
+    mServer = vs;
 
     mPixels = new AndroidPixelBuffer();
     mPixels->setDimensionsChangedListener(this);
@@ -137,10 +136,6 @@
     notify();
 }
 
-rfb::Point AndroidDesktop::getFbSize() {
-    return rfb::Point(mPixels->width(), mPixels->height());
-}
-
 void AndroidDesktop::keyEvent(rdr::U32 keysym, __unused_attr rdr::U32 keycode, bool down) {
     mInputDevice->keyEvent(down, keysym);
 }
@@ -173,6 +168,13 @@
     return NO_ERROR;
 }
 
+rfb::ScreenSet AndroidDesktop::computeScreenLayout() {
+    rfb::ScreenSet screens;
+    screens.add_screen(rfb::Screen(0, 0, 0, mPixels->width(), mPixels->height(), 0));
+    return screens;
+    mServer->setScreenLayout(screens);
+}
+
 void AndroidDesktop::onBufferDimensionsChanged(uint32_t width, uint32_t height) {
     ALOGV("Dimensions changed: old=(%ux%u) new=(%ux%u)", mDisplayRect.getWidth(),
           mDisplayRect.getHeight(), width, height);
@@ -184,11 +186,8 @@
 
     mInputDevice->reconfigure(mDisplayRect.getWidth(), mDisplayRect.getHeight());
 
-    mServer->setPixelBuffer(mPixels.get());
-
-    rfb::ScreenSet screens;
-    screens.add_screen(rfb::Screen(0, 0, 0, mPixels->width(), mPixels->height(), 0));
-    mServer->setScreenLayout(screens);
+    mServer->setPixelBuffer(mPixels.get(), computeScreenLayout());
+    mServer->setScreenLayout(computeScreenLayout());
 }
 
 void AndroidDesktop::queryConnection(network::Socket* sock, __unused_attr const char* userName) {
diff --git a/src/AndroidDesktop.h b/src/AndroidDesktop.h
index 93a6610..f9f82de 100644
--- a/src/AndroidDesktop.h
+++ b/src/AndroidDesktop.h
@@ -14,7 +14,7 @@
 
 #include <rfb/PixelBuffer.h>
 #include <rfb/SDesktop.h>
-#include <rfb/VNCServerST.h>
+#include <rfb/ScreenSet.h>
 
 #include "AndroidPixelBuffer.h"
 #include "InputDevice.h"
@@ -36,7 +36,6 @@
     virtual void stop();
     virtual void terminate();
 
-    virtual rfb::Point getFbSize();
     virtual unsigned int setScreenLayout(int fb_width, int fb_height, const rfb::ScreenSet& layout);
 
     virtual void keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down);
@@ -59,6 +58,8 @@
 
     virtual status_t updateDisplayInfo();
 
+    virtual rfb::ScreenSet computeScreenLayout();
+
     Rect mDisplayRect;
 
     Mutex mLock;
@@ -68,7 +69,7 @@
     int mEventFd;
 
     // Server instance
-    rfb::VNCServerST* mServer;
+    rfb::VNCServer* mServer;
 
     // Pixel buffer
     sp<AndroidPixelBuffer> mPixels;