[Developement] Viewer can limit mouse events transfer (see mouseMaxFreq member).
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3559 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/java/src/com/tightvnc/vncviewer/VncCanvas.java b/java/src/com/tightvnc/vncviewer/VncCanvas.java
index 59e22fe..56019be 100644
--- a/java/src/com/tightvnc/vncviewer/VncCanvas.java
+++ b/java/src/com/tightvnc/vncviewer/VncCanvas.java
@@ -95,6 +95,10 @@
// True if was no one auto resize of canvas
boolean isFirstSizeAutoUpdate = true;
+ // Members for limiting sending mouse events to server
+ long lastMouseEventSendTime = System.currentTimeMillis();
+ long mouseMaxFreq = 20;
+
//
// The constructors.
//
@@ -813,7 +817,10 @@
if (viewer.rfb != null && rfb.inNormalProtocol) {
if (!inSelectionMode) {
if (inputEnabled) {
- sendMouseEvent(evt, moved);
+ if (System.currentTimeMillis() - lastMouseEventSendTime >=
+ (1000 / mouseMaxFreq)) {
+ sendMouseEvent(evt, moved);
+ }
}
} else {
handleSelectionMouseEvent(evt);
@@ -837,6 +844,7 @@
e.printStackTrace();
}
rfb.notify();
+ lastMouseEventSendTime = System.currentTimeMillis();
}
}