diff src/main/java/jp/ac/u_ryukyu/treevnc/server/VncProxyService.java @ 50:225e3873d75f

Modified to be able to specify the region of the screen in the argument.
author one
date Tue, 09 Jul 2013 18:08:16 +0900
parents b0c7fad4c695
children
line wrap: on
line diff
--- a/src/main/java/jp/ac/u_ryukyu/treevnc/server/VncProxyService.java	Tue Jun 18 19:15:21 2013 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/treevnc/server/VncProxyService.java	Tue Jul 09 18:08:16 2013 +0900
@@ -57,7 +57,8 @@
 
 	private VncProxyService prevVps;
 	static VncProxyService currentVps;
-
+	private int fbWidth = 0;
+	private int fbHeight = 0;
 	// public AcceptClient acc;
 
 	private void initProxy(Parser parser) {
@@ -97,7 +98,7 @@
 		String[] mainArgs = argv;
 		System.out.println(mainArgs.length);
 		// input into arguments Decision
-
+		
 		Parser parser = new Parser();
 		ParametersHandler.completeParserOptions(parser);
 
@@ -167,6 +168,8 @@
 						new PasswordChooser(passwordFromParams,
 								connectionParams, containerFrame, this),
 						settings);
+				if(fbWidth!=0)
+					workingProtocol.setScreenSizeRetina(fbWidth, fbHeight);
 				workingProtocol.handshake();
 				rfb.setProtocolContext(workingProtocol);
 				// input into change parents
@@ -245,16 +248,22 @@
 		thread = new Thread(getCast);
 		thread.start();
 	}
+	
 
+	public void proxyStart(String[] argv,int width,int height) {
+		fbWidth = width;
+		fbHeight = height;
+		proxyStart(argv);
+	}
+	
 	public void proxyStart(String[] argv) {
 		String[] mainArgs = argv;
 		System.out.println(mainArgs.length);
 		// input into arguments Decision
-
 		Parser parser = new Parser();
 		ParametersHandler.completeParserOptions(parser);
-
-		parser.parse(argv);
+		if(fbWidth==0)
+			parser.parse(argv);
 		if (parser.isSet(ParametersHandler.ARG_HELP)) {
 			printUsage(parser.optionsUsage());
 			System.exit(0);