# HG changeset patch # User Carl Byington # Date 1402943137 25200 # Node ID 8f23b05a51f7538f8097755057495e1d4c7b8300 # Parent 4ccfde0bc506dcca3f73a9366409fc4dbaca094b convert ctrl keys to virtual keys; use proper android home directory diff -r 4ccfde0bc506 -r 8f23b05a51f7 src/com/five_ten_sg/connectbot/transport/TN5250.java --- a/src/com/five_ten_sg/connectbot/transport/TN5250.java Mon Jun 16 10:43:30 2014 -0700 +++ b/src/com/five_ten_sg/connectbot/transport/TN5250.java Mon Jun 16 11:25:37 2014 -0700 @@ -70,6 +70,7 @@ class vt320x5250 extends vt320 { + private HashMap controls; private HashMap mnemonics; public vt320x5250() { @@ -78,6 +79,12 @@ public vt320x5250(int width, int height) { super(width, height); + controls = new HashMap(); + controls.put(0x08, KEY_BACK_SPACE); + controls.put(0x09, KEY_TAB); + controls.put(0x0d, KEY_ENTER); + controls.put(0x1b, KEY_ESCAPE); + mnemonics = new HashMap(); mnemonics.put(KEY_PAUSE , "[attn]"); mnemonics.put(KEY_F1 , "[pf1]"); @@ -144,8 +151,13 @@ } @Override public void write(int b) { - if (bridge.monitor != null) bridge.monitor.hostData(b); - screen52.sendKeys(new String(new byte[] {(byte)b})); + if (controls.containsKey(b)) { + keyPressed(controls.get(b), ' ', 0); + } + else { + if (bridge.monitor != null) bridge.monitor.hostData(b); + screen52.sendKeys(new String(new byte[] {(byte)b})); + } } @Override public void keyPressed(int keyCode, char keyChar, int modifiers) { diff -r 4ccfde0bc506 -r 8f23b05a51f7 src/org/tn5250j/GlobalConfigure.java --- a/src/org/tn5250j/GlobalConfigure.java Mon Jun 16 10:43:30 2014 -0700 +++ b/src/org/tn5250j/GlobalConfigure.java Mon Jun 16 11:25:37 2014 -0700 @@ -472,11 +472,11 @@ } /** - * Private helper to return the settings directory + * helper to return the settings directory * * @return */ - private String settingsDirectory() { + public String settingsDirectory() { return settingsFolder() + File.separator; } diff -r 4ccfde0bc506 -r 8f23b05a51f7 src/org/tn5250j/framework/transport/SSL/SSLImplementation.java --- a/src/org/tn5250j/framework/transport/SSL/SSLImplementation.java Mon Jun 16 10:43:30 2014 -0700 +++ b/src/org/tn5250j/framework/transport/SSL/SSLImplementation.java Mon Jun 16 11:25:37 2014 -0700 @@ -84,8 +84,7 @@ public void init(String sslType) { try { Log.d(TAG,"Initializing User KeyStore"); - userKsPath = System.getProperty("user.home") + File.separator - + GlobalConfigure.TN5250J_FOLDER + File.separator + "keystore"; + userKsPath = GlobalConfigure.settingsDirectory() + "keystore"; File userKsFile = new File(userKsPath); userks = KeyStore.getInstance(KeyStore.getDefaultType()); userks.load(userKsFile.exists() ? new FileInputStream(userKsFile)