From 03c473ef3e95ee2ad24ce26ef6f738968a8257ce Mon Sep 17 00:00:00 2001 From: Kenny Root Date: Wed, 12 Aug 2009 16:26:38 +0000 Subject: Fix use of shift and alt keys with no shortcuts Before if you selected to use no directory shortcuts, the shift and alt modifiers wouldn't work. git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@389 df292f66-193f-0410-a5fc-6d59da041ff2 --- src/org/connectbot/service/TerminalBridge.java | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/org/connectbot/service/TerminalBridge.java b/src/org/connectbot/service/TerminalBridge.java index 4bf5c1a..a2d6e94 100644 --- a/src/org/connectbot/service/TerminalBridge.java +++ b/src/org/connectbot/service/TerminalBridge.java @@ -608,8 +608,8 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { // try handling keymode shortcuts if (event.getRepeatCount() == 0) { - if ("Use right-side keys".equals(keymode)) { - switch(keyCode) { + if (PreferenceConstants.KEYMODE_RIGHT.equals(keymode)) { + switch (keyCode) { case KeyEvent.KEYCODE_ALT_RIGHT: metaState |= META_SLASH; return true; @@ -622,11 +622,9 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { case KeyEvent.KEYCODE_ALT_LEFT: metaPress(META_ALT_ON); return true; - default: - break; } - } else if ("Use left-side keys".equals(keymode)) { - switch(keyCode) { + } else if (PreferenceConstants.KEYMODE_LEFT.equals(keymode)) { + switch (keyCode) { case KeyEvent.KEYCODE_ALT_LEFT: metaState |= META_SLASH; return true; @@ -639,8 +637,17 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { case KeyEvent.KEYCODE_ALT_RIGHT: metaPress(META_ALT_ON); return true; - default: - break; + } + } else { + switch (keyCode) { + case KeyEvent.KEYCODE_ALT_LEFT: + case KeyEvent.KEYCODE_ALT_RIGHT: + metaPress(META_ALT_ON); + return true; + case KeyEvent.KEYCODE_SHIFT_LEFT: + case KeyEvent.KEYCODE_SHIFT_RIGHT: + metaPress(META_SHIFT_ON); + return true; } } } -- cgit v1.2.3