# HG changeset patch # User Shinji KONO # Date 1550645368 -32400 # Node ID 16f9b37ef43b8b1fb7b2d3825fe94a613247edca # Parent 519d6f94edccb9689c7361b2a6397dc0632f1842 fix diff -r 519d6f94edcc -r 16f9b37ef43b src/main/java/jp/ac/u_ryukyu/treevnc/TreeRootFinderListener.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRootFinderListener.java Wed Feb 20 15:30:25 2019 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/TreeRootFinderListener.java Wed Feb 20 15:49:28 2019 +0900 @@ -23,11 +23,9 @@ private ViewerInterface vps; private MulticastSocket soc; private SecurityManager securityManager; - private boolean isTreeRoot; public TreeRootFinderListener(ViewerInterface vncProxyService) { vps = vncProxyService; - isTreeRoot = vps.getRfb().isTreeManager(); } public static MulticastSocket createMulticastSocket() throws IOException { @@ -61,6 +59,7 @@ String hostname = recvPacket.getAddress().getHostAddress(); byte[] reply = recvPacket.getData(); int len = recvPacket.getLength(); + boolean isTreeRoot = vps.getRfb().isTreeManager(); if (isTreeRoot && len == 12 && (reply[0] & 0xff) == TreeCommand.FIND_ROOT.cmd) { int port = reply[8]; port = port * 256 + reply[9]; diff -r 519d6f94edcc -r 16f9b37ef43b src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java Wed Feb 20 15:30:25 2019 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java Wed Feb 20 15:49:28 2019 +0900 @@ -43,6 +43,7 @@ private boolean showTree = false; public int width; public int height; + private boolean useMulticast; public static void main(String[] args) { Parser parser = new Parser(); @@ -145,6 +146,7 @@ connectionPresenter.setConnectionWorkerFactory( new SwingConnectionWorkerFactory(null, passwordFromParams, connectionPresenter, null, myRfb)); connectionPresenter.setCuiVersion(true); + connectionPresenter.setMulticast(useMulticast); connectionPresenter.startConnection(settings, uiSettings, paramsMask, false, null, null); } @@ -164,6 +166,16 @@ } @Override + public void setUseMulticast(boolean useMulticast) { + this.useMulticast = useMulticast; + } + + @Override + public boolean getUseMulticast() { + return useMulticast; + } + + @Override public void windowOpened(WindowEvent e) { /* nop */ } diff -r 519d6f94edcc -r 16f9b37ef43b src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java Wed Feb 20 15:30:25 2019 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/TreeViewer.java Wed Feb 20 15:49:28 2019 +0900 @@ -64,6 +64,7 @@ } setWidthAndHeight(v); + v.setUseMulticast(useMulticast); // if(filterSingleDisplay) if(fixingSizeDisplay) setFixingSizeDisplay(v); @@ -215,9 +216,6 @@ v.setWidth(width); v.setHeight(height); } - if (useMulticast) { - v.getConnectionPresenter().setMulticast(true); - } } public void setFixingSizeDisplay(ViewerInterface v) { diff -r 519d6f94edcc -r 16f9b37ef43b src/viewer_swing/java/com/glavsoft/viewer/Viewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Wed Feb 20 15:30:25 2019 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Wed Feb 20 15:49:28 2019 +0900 @@ -76,6 +76,7 @@ public int height; public int fixingSizeWidth; public int fixingSizeHeight; + private boolean useMulticast; public static void main(String[] args) { Parser parser = new Parser(); @@ -226,6 +227,7 @@ final boolean hasJsch = checkJsch(); final boolean allowInteractive = allowAppletInteractiveConnections || ! isApplet; connectionPresenter = new ConnectionPresenter(hasJsch, allowInteractive); + connectionPresenter.setMulticast(useMulticast); connectionPresenter.setReconnectingId(myRfb.getId()); connectionPresenter.setNoConnection(noConnection); connectionPresenter.addModel("ConnectionParamsModel", connectionParams); @@ -347,6 +349,16 @@ connectionPresenter.startVNCConnection(this, true, is, os); } + @Override + public void setUseMulticast(boolean useMulticast) { + this.useMulticast = useMulticast; + } + + @Override + public boolean getUseMulticast() { + return useMulticast; + } + private ConnectionPresenter createNewConnectionPresenter(String hostName, short newVNCServerId, int x, int y, int width, int height, int scale) { final boolean hasJsch = checkJsch(); final boolean allowInteractive = allowAppletInteractiveConnections || ! isApplet; diff -r 519d6f94edcc -r 16f9b37ef43b src/viewer_swing/java/com/glavsoft/viewer/ViewerInterface.java --- a/src/viewer_swing/java/com/glavsoft/viewer/ViewerInterface.java Wed Feb 20 15:30:25 2019 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/ViewerInterface.java Wed Feb 20 15:49:28 2019 +0900 @@ -61,5 +61,7 @@ void changeToDirectConnectedServer(String hostName, Reader is, Writer os, int x, int y, int width, int height, int scale); + public void setUseMulticast(boolean useMulticast) ; + public boolean getUseMulticast(); }