Mercurial > hg > Members > riono > TreeVNC_ja_comment
diff src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java @ 420:0ad52aac3bc3
Send repeat FramebufferUpdateRequest from Timer class
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 18 Jan 2016 17:37:58 +0900 |
parents | 7e811f33b99d |
children | 752788fdae03 |
line wrap: on
line diff
--- a/src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java Fri Jan 01 02:39:25 2016 +0900 +++ b/src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java Mon Jan 18 17:37:58 2016 +0900 @@ -117,6 +117,15 @@ @Override public void run() { isRunning = true; + if (rfb.isTreeManager()) { + timer = new Timer("framebufferUpdate-request-timer", true); + timer.schedule(new TimerTask() { + @Override + public void run() { + context.sendMessage(new FramebufferUpdateRequestMessage(rfb.getX(), rfb.getY(), rfb.frameSizeWidth * rfb.getRetinaScale(), rfb.frameSizeHeight * rfb.getRetinaScale(), false)); + } + }, 0, 100); + } while (isRunning) { try { reader.available(); @@ -358,8 +367,6 @@ logger.fine("sent: " + pixelFormat); context.sendRefreshMessage(); logger.fine("sent: nonincremental fb update"); - } else { - context.sendMessage(new FramebufferUpdateRequestMessage(rfb.getX(), rfb.getY(), rfb.getSingleWidth() * rfb.getRetinaScale(), rfb.getSingleHeight() * rfb.getRetinaScale(), false)); } } } @@ -377,6 +384,10 @@ public void stopTask() { isRunning = false; + if (timer != null) { + timer.cancel(); + timer.purge(); + } } private void connectionFinished() {