Removed PollPointer parameter and the corresponding code. Polling the screen around the pointer rather decreased polling performance then improved responsiveness.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2351 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/unix/x0vncserver/PollingManager.h b/unix/x0vncserver/PollingManager.h
index c8d6451..1e76acb 100644
--- a/unix/x0vncserver/PollingManager.h
+++ b/unix/x0vncserver/PollingManager.h
@@ -44,23 +44,22 @@
void setVNCServer(VNCServer *s);
- void setPointerPos(const Point &pos);
- void unsetPointerPos();
+ // Currently, these functions do nothing. In past versions, we used
+ // to poll area around the pointer if its position has been changed
+ // recently. But that rather decreased overal polling performance,
+ // so we don't do that any more. However, pointer position may be a
+ // useful hint and might be used in future code, so we do not remove
+ // these functions, just in case.
+ void setPointerPos(const Point &pos) {}
+ void unsetPointerPos() {}
void poll();
- // Configurable parameters.
- static BoolParameter pollPointer;
-
protected:
// Screen polling. Returns true if some changes were detected.
bool pollScreen();
- // Separate polling for the area around current pointer position.
- void computePointerArea(Rect *r);
- bool pollPointerArea();
-
Display *m_dpy;
VNCServer *m_server;
@@ -72,11 +71,6 @@
int m_widthTiles;
int m_heightTiles;
- // Tracking pointer position for polling improvements.
- bool m_pointerPosKnown;
- Point m_pointerPos;
- time_t m_pointerPosTime;
-
private:
inline void getScreen() {
@@ -103,18 +97,6 @@
m_offsetLeft + x, m_offsetTop + y, 1, h);
}
- inline void getArea128(int x, int y, int w, int h) {
- if (w == 128 && h == 128) {
- // This version of get() may be better optimized.
- m_areaImage->get(DefaultRootWindow(m_dpy),
- m_offsetLeft + x, m_offsetTop + y);
- } else {
- // Generic version of get() for arbitrary width and height.
- m_areaImage->get(DefaultRootWindow(m_dpy),
- m_offsetLeft + x, m_offsetTop + y, w, h);
- }
- }
-
int checkRow(int x, int y, int w, bool *pmxChanged);
void sendChanges(bool *pmxChanged);
bool detectVideo(bool *pmxChanged);
@@ -128,7 +110,6 @@
// Additional images used in polling algorithms.
Image *m_rowImage; // One row of the framebuffer
- Image *m_areaImage; // Area around the pointer (up to 128x128)
char *m_rateMatrix;
char *m_videoFlags;