Refactoring: now PollingManager is owned by XPixelBuffer. No other classes
know about PollingManager.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2576 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/unix/x0vncserver/XPixelBuffer.cxx b/unix/x0vncserver/XPixelBuffer.cxx
index ed22508..f691c57 100644
--- a/unix/x0vncserver/XPixelBuffer.cxx
+++ b/unix/x0vncserver/XPixelBuffer.cxx
@@ -30,6 +30,7 @@
 XPixelBuffer::XPixelBuffer(Display *dpy, ImageFactory &factory,
                            const Rect &rect, ColourMap* cm)
   : FullFramePixelBuffer(),
+    m_poller(0),
     m_dpy(dpy),
     m_image(factory.newImage(dpy, rect.width(), rect.height())),
     m_offsetLeft(rect.tl.x),
@@ -60,10 +61,15 @@
 
   // Get initial screen image from the X display.
   m_image->get(DefaultRootWindow(m_dpy), m_offsetLeft, m_offsetTop);
+
+  // PollingManager will detect changed pixels.
+  m_poller = new PollingManager(dpy, getImage(), factory,
+                                m_offsetLeft, m_offsetTop);
 }
 
 XPixelBuffer::~XPixelBuffer()
 {
+  delete m_poller;
   delete m_image;
 }