# HG changeset patch # User Shinji KONO # Date 1400779929 -32400 # Node ID 44d2b407de6528a80070fa836694f724a02a17ce # Parent 84f254d8bde42462b1f8d1e9351b3228e8424b7a unify constructors in Protocol diff -r 84f254d8bde4 -r 44d2b407de65 src/main/java/com/glavsoft/rfb/protocol/Protocol.java --- a/src/main/java/com/glavsoft/rfb/protocol/Protocol.java Fri May 23 02:20:05 2014 +0900 +++ b/src/main/java/com/glavsoft/rfb/protocol/Protocol.java Fri May 23 02:32:09 2014 +0900 @@ -178,8 +178,17 @@ * With a fast client, the rate at which FramebufferUpdateRequests are sent * should be regulated to avoid hogging the network. */ - public void startNormalHandling(IRfbSessionListener rfbSessionListener, - IRepaintController repaintController, ClipboardController clipboardController) { + public void startNormalHandling(IRfbSessionListener rfbSessionListener, + IRepaintController repaintController, ClipboardController clipboardController) { + receiverTask = new ReceiverTask( + reader, repaintController, + clipboardController, + decoders, this); + startNormalHandling1(rfbSessionListener, repaintController, clipboardController); + } + + public void startNormalHandling1(IRfbSessionListener rfbSessionListener, + IRepaintController repaintController, ClipboardController clipboardController) { this.rfbSessionListener = rfbSessionListener; this.repaintController = repaintController; // if (settings.getColorDepth() == 0) { @@ -199,10 +208,7 @@ senderThread = new Thread(senderTask, "RfbSenderTask"); senderThread.start(); decoders.resetDecoders(); - receiverTask = new ReceiverTask( - reader, repaintController, - clipboardController, - decoders, this); + receiverThread = new Thread(receiverTask, "RfbReceiverTask"); receiverThread.start(); } @@ -328,67 +334,27 @@ return protocolVersion; } - public void startNormalHandling(IRfbSessionListener rfbSessionListener, - IRepaintController repaintController, ClipboardController clipboardController, - MyRfbProto rfb) - { - this.rfbSessionListener = rfbSessionListener; - this.repaintController = repaintController; -// if (settings.getBitsPerPixel() == 0) { -// settings.setBitsPerPixel(pixelFormat.bitsPerPixel); // the same the server sent when not initialized yet -// } - serverPixelFormat = pixelFormat; - serverPixelFormat.trueColourFlag = 1; // correct flag - we don't support color maps - setPixelFormat(createPixelFormat(settings)); - sendMessage(new SetPixelFormatMessage(pixelFormat)); - logger.fine("sent: "+pixelFormat); - - sendSupportedEncodingsMessage(settings); - settings.addListener(this); // to support pixel format (color depth), and encodings changes - settings.addListener(repaintController); - sendRefreshMessage(); - senderTask = new SenderTask(messageQueue, writer, this); - senderThread = new Thread(senderTask,"sender-task"); - senderThread.start(); - decoders.resetDecoders(); - receiverTask = new TreeTask( - reader, repaintController, - clipboardController, - decoders, this, rfb); - receiverThread = new Thread(receiverTask,"receiver-task"); - receiverThread.start(); - } - + public void startNormalHandling(IRfbSessionListener rfbSessionListener, + IRepaintController repaintController, ClipboardController clipboardController, + MyRfbProto rfb) + { + receiverTask = new TreeTask( + reader, repaintController, + clipboardController, + decoders, this, rfb); + startNormalHandling1(rfbSessionListener, repaintController, clipboardController); + } public void startTreeClientHandling(IRfbSessionListener rfbSessionListener, IRepaintController repaintController, ClipboardController clipboardController, MyRfbProto rfb) { - this.rfbSessionListener = rfbSessionListener; - this.repaintController = repaintController; -// if (settings.getBitsPerPixel() == 0) { -// settings.setBitsPerPixel(pixelFormat.bitsPerPixel); // the same the server sent when not initialized yet -// } - serverPixelFormat = pixelFormat; - serverPixelFormat.trueColourFlag = 1; // correct flag - we don't support color maps - setPixelFormat(createPixelFormat(settings)); - sendMessage(new SetPixelFormatMessage(pixelFormat)); - logger.fine("sent: "+pixelFormat); - - sendSupportedEncodingsMessage(settings); - settings.addListener(this); // to support pixel format (color depth), and encodings changes - settings.addListener(repaintController); - - sendRefreshMessage(); - senderTask = new SenderTask(messageQueue, writer, this); - senderThread = new Thread(senderTask); - senderThread.start(); - decoders.resetDecoders(); - receiverTask = new TreeTask( - reader, repaintController, - clipboardController, - decoders, this, rfb); - receiverThread = new Thread(receiverTask); - receiverThread.start(); + this.repaintController = repaintController; + settings.addListener(repaintController); + receiverTask = new TreeTask( + reader, repaintController, + clipboardController, + decoders, this, rfb); + startTreeClientHandling(rfbSessionListener, clipboardController, rfb); } public void setScreenSizeRetina(int fbWidth, int fbHeight) { @@ -417,10 +383,12 @@ senderThread = new Thread(senderTask, "SenderTask"); senderThread.start(); decoders.resetDecoders(); - receiverTask = new TreeTask( - reader, null, - clipboardController, - decoders, this, rfb); + if (receiverTask==null) { + receiverTask = new TreeTask( + reader, null, + clipboardController, + decoders, this, rfb); + } receiverThread = new Thread(receiverTask, "TreeTask"); receiverThread.start(); } diff -r 84f254d8bde4 -r 44d2b407de65 src/viewer_swing/java/com/glavsoft/viewer/swing/SwingViewerWindow.java --- a/src/viewer_swing/java/com/glavsoft/viewer/swing/SwingViewerWindow.java Fri May 23 02:20:05 2014 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/swing/SwingViewerWindow.java Fri May 23 02:32:09 2014 +0900 @@ -52,8 +52,6 @@ import java.util.concurrent.TimeUnit; import java.util.logging.Logger; -import jp.ac.u_ryukyu.treevnc.server.MyRfbProtoProxy; - public class SwingViewerWindow implements IChangeSettingsListener { public static final int FS_SCROLLING_ACTIVE_BORDER = 20; private JToggleButton zoomFitButton;