comparison src/main/java/com/glavsoft/rfb/protocol/ReceiverTask.java @ 415:5c3635d6ab3c

Send Check_Delay packet if checkDelay flag is true
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Tue, 24 Nov 2015 04:39:25 +0900
parents 3af5f4af2d63
children c225c7963778
comparison
equal deleted inserted replaced
414:3af5f4af2d63 415:5c3635d6ab3c
97 fullscreenFbUpdateIncrementalRequest = new FramebufferUpdateRequestMessage(0, 0, context.getFbWidth(), context.getFbHeight(), false); 97 fullscreenFbUpdateIncrementalRequest = new FramebufferUpdateRequestMessage(0, 0, context.getFbWidth(), context.getFbHeight(), false);
98 } 98 }
99 if(rfb.isTreeManager()) { 99 if(rfb.isTreeManager()) {
100 fullscreenFbUpdateIncrementalRequest.sendFullScreenRequest(); 100 fullscreenFbUpdateIncrementalRequest.sendFullScreenRequest();
101 connectionFinished(); 101 connectionFinished();
102 if(rfb.checkDelay) {
103 SendCheckDelay sendCheckDelay = new SendCheckDelay(rfb);
104 Thread sendCheckDelayThread = new Thread(sendCheckDelay, "send-check-delay");
105 sendCheckDelayThread.start();
106 }
107 if(rfb.fixingSize) { 102 if(rfb.fixingSize) {
108 timer = new Timer("framebufferUpdate-request-timer", true); 103 timer = new Timer("framebufferUpdate-request-timer", true);
109 timer.schedule(new TimerTask() { 104 timer.schedule(new TimerTask() {
110 @Override 105 @Override
111 public void run() { 106 public void run() {
236 if(numberOfRectangles != 1) 231 if(numberOfRectangles != 1)
237 System.out.println("numberofrectangle : " + numberOfRectangles); 232 System.out.println("numberofrectangle : " + numberOfRectangles);
238 while (numberOfRectangles-- > 0) { 233 while (numberOfRectangles-- > 0) {
239 FramebufferUpdateRectangle rect = new FramebufferUpdateRectangle(); 234 FramebufferUpdateRectangle rect = new FramebufferUpdateRectangle();
240 rect.fill(reader); 235 rect.fill(reader);
241 if(rfb.isTreeManager() && rfb.checkDelay) {
242 long time = System.currentTimeMillis();
243 System.out.println(time + " : size : " + rect.width * rect.height);
244 }
245 Decoder decoder = decoders.getDecoderByType(rect.getEncodingType()); 236 Decoder decoder = decoders.getDecoderByType(rect.getEncodingType());
246 logger.finest(rect.toString() + (0 == numberOfRectangles ? "\n---" : "")); 237 logger.finest(rect.toString() + (0 == numberOfRectangles ? "\n---" : ""));
247 if (decoder != null) { 238 if (decoder != null) {
248 try { 239 try {
249 decoder.decode(reader, renderer, rect); // TreeVNC processing here 240 decoder.decode(reader, renderer, rect); // TreeVNC processing here
334 sendCheckDelayReply(rect.time, port, address, dataLen); 325 sendCheckDelayReply(rect.time, port, address, dataLen);
335 reader.reset(); 326 reader.reset();
336 reader.readBytes(24); 327 reader.readBytes(24);
337 decoder = decoders.getDecoderByType(EncodingType.ZRLEE); 328 decoder = decoders.getDecoderByType(EncodingType.ZRLEE);
338 decoder.decode(reader, renderer, rect); // TreeVNC processing here 329 decoder.decode(reader, renderer, rect); // TreeVNC processing here
330 repaintController.repaintBitmap(rect);
339 } else if (rect.getEncodingType() == EncodingType.SOUND) { 331 } else if (rect.getEncodingType() == EncodingType.SOUND) {
340 // SOUNDを受信した時の処理を 332 // SOUNDを受信した時の処理を
341 } else if (rect.getEncodingType() == EncodingType.ERROR_ANNOUNCE) { 333 } else if (rect.getEncodingType() == EncodingType.ERROR_ANNOUNCE) {
342 short id = (short) rect.x; 334 short id = (short) rect.x;
343 int length = reader.readInt32(); 335 int length = reader.readInt32();