Mercurial > hg > Members > riono > TreeVNC_ja_comment
comparison 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 |
comparison
equal
deleted
inserted
replaced
419:7e811f33b99d | 420:0ad52aac3bc3 |
---|---|
115 } | 115 } |
116 | 116 |
117 @Override | 117 @Override |
118 public void run() { | 118 public void run() { |
119 isRunning = true; | 119 isRunning = true; |
120 if (rfb.isTreeManager()) { | |
121 timer = new Timer("framebufferUpdate-request-timer", true); | |
122 timer.schedule(new TimerTask() { | |
123 @Override | |
124 public void run() { | |
125 context.sendMessage(new FramebufferUpdateRequestMessage(rfb.getX(), rfb.getY(), rfb.frameSizeWidth * rfb.getRetinaScale(), rfb.frameSizeHeight * rfb.getRetinaScale(), false)); | |
126 } | |
127 }, 0, 100); | |
128 } | |
120 while (isRunning) { | 129 while (isRunning) { |
121 try { | 130 try { |
122 reader.available(); | 131 reader.available(); |
123 if (! isRunning) { | 132 if (! isRunning) { |
124 // server Change in direct mode | 133 // server Change in direct mode |
356 context.setPixelFormat(pixelFormat); | 365 context.setPixelFormat(pixelFormat); |
357 context.sendMessage(new SetPixelFormatMessage(pixelFormat)); | 366 context.sendMessage(new SetPixelFormatMessage(pixelFormat)); |
358 logger.fine("sent: " + pixelFormat); | 367 logger.fine("sent: " + pixelFormat); |
359 context.sendRefreshMessage(); | 368 context.sendRefreshMessage(); |
360 logger.fine("sent: nonincremental fb update"); | 369 logger.fine("sent: nonincremental fb update"); |
361 } else { | |
362 context.sendMessage(new FramebufferUpdateRequestMessage(rfb.getX(), rfb.getY(), rfb.getSingleWidth() * rfb.getRetinaScale(), rfb.getSingleHeight() * rfb.getRetinaScale(), false)); | |
363 } | 370 } |
364 } | 371 } |
365 } | 372 } |
366 } | 373 } |
367 | 374 |
375 // context.sendMessage(new FramebufferUpdateRequestMessage(0, 0, 1, 1, false)); | 382 // context.sendMessage(new FramebufferUpdateRequestMessage(0, 0, 1, 1, false)); |
376 } | 383 } |
377 | 384 |
378 public void stopTask() { | 385 public void stopTask() { |
379 isRunning = false; | 386 isRunning = false; |
387 if (timer != null) { | |
388 timer.cancel(); | |
389 timer.purge(); | |
390 } | |
380 } | 391 } |
381 | 392 |
382 private void connectionFinished() { | 393 private void connectionFinished() { |
383 rfb.vncConnected(true); | 394 rfb.vncConnected(true); |
384 } | 395 } |