Mercurial > hg > Applications > TreeVNC
comparison src/main/java/com/glavsoft/rfb/client/FramebufferUpdateRequestMessage.java @ 59:433c79184c05
merge version2.7.2
author | Taninari YU <you@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 17 Dec 2013 20:16:48 +0900 |
parents | 17b702648079 913d0f663e74 |
children | d9cf08c6415c |
comparison
equal
deleted
inserted
replaced
58:9d4c4b64acb5 | 59:433c79184c05 |
---|---|
22 //------------------------------------------------------------------------- | 22 //------------------------------------------------------------------------- |
23 // | 23 // |
24 | 24 |
25 package com.glavsoft.rfb.client; | 25 package com.glavsoft.rfb.client; |
26 | 26 |
27 import java.util.Timer; | |
28 import java.util.TimerTask; | |
29 | |
27 import com.glavsoft.exceptions.TransportException; | 30 import com.glavsoft.exceptions.TransportException; |
28 import com.glavsoft.transport.Writer; | 31 import com.glavsoft.transport.Writer; |
29 | 32 |
30 | 33 |
31 public class FramebufferUpdateRequestMessage implements ClientToServerMessage { | 34 public class FramebufferUpdateRequestMessage implements ClientToServerMessage { |
32 private final boolean incremental; | 35 private final boolean incremental; |
33 private final int height; | 36 private final int height; |
34 private final int width; | 37 private final int width; |
35 private final int y; | 38 private final int y; |
36 private final int x; | 39 private final int x; |
37 | 40 |
41 private boolean sendFullScreenFlag; | |
42 | |
38 public FramebufferUpdateRequestMessage(int x, int y, int width, | 43 public FramebufferUpdateRequestMessage(int x, int y, int width, |
39 int height, boolean incremental) { | 44 int height, boolean incremental) { |
40 this.x = x; | 45 this.x = x; |
41 this.y = y; | 46 this.y = y; |
42 this.width = width; | 47 this.width = width; |
43 this.height = height; | 48 this.height = height; |
44 this.incremental = incremental; | 49 this.incremental = incremental; |
50 // sendFullScreenRequest(); | |
45 } | 51 } |
46 | 52 |
47 @Override | 53 @Override |
48 public void send(Writer writer) throws TransportException { | 54 public void send(Writer writer) throws TransportException { |
49 writer.writeByte(FRAMEBUFFER_UPDATE_REQUEST); | 55 writer.writeByte(FRAMEBUFFER_UPDATE_REQUEST); |
50 writer.writeByte(incremental ? 1 : 0); | 56 if(sendFullScreenFlag) { |
57 writer.writeByte(0); | |
58 sendFullScreenFlag = false; | |
59 } else { | |
60 writer.writeByte(incremental ? 1 : 0); | |
61 } | |
51 writer.writeInt16(x); | 62 writer.writeInt16(x); |
52 writer.writeInt16(y); | 63 writer.writeInt16(y); |
53 writer.writeInt16(width); | 64 writer.writeInt16(width); |
54 writer.writeInt16(height); | 65 writer.writeInt16(height); |
55 writer.flush(); | 66 writer.flush(); |
59 public String toString() { | 70 public String toString() { |
60 return "FramebufferUpdateRequestMessage: [x: " + x + " y: " + y | 71 return "FramebufferUpdateRequestMessage: [x: " + x + " y: " + y |
61 + " width: " + width + " height: " + height + | 72 + " width: " + width + " height: " + height + |
62 " incremental: " + incremental + "]"; | 73 " incremental: " + incremental + "]"; |
63 } | 74 } |
64 | 75 |
76 public void sendFullScreenRequest() { | |
77 int sendFullScreenTimer = 5 * 1000; | |
78 TimerTask tt = new TimerTask() { | |
79 @Override | |
80 public void run() { | |
81 System.out.println("fullscreen"); | |
82 sendFullScreenFlag = true; | |
83 } | |
84 }; | |
85 Timer timer = new Timer(); | |
86 timer.schedule(tt, 0, sendFullScreenTimer); | |
87 } | |
65 } | 88 } |