aboutsummaryrefslogtreecommitdiffstats
path: root/src/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/org')
-rw-r--r--src/org/connectbot/service/TerminalKeyListener.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/org/connectbot/service/TerminalKeyListener.java b/src/org/connectbot/service/TerminalKeyListener.java
index 3349fbe..e768134 100644
--- a/src/org/connectbot/service/TerminalKeyListener.java
+++ b/src/org/connectbot/service/TerminalKeyListener.java
@@ -161,13 +161,13 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
bridge.resetScrollPosition();
- int curMetaState = event.getMetaState();
- int key = keymap.get(keyCode, curMetaState);
- boolean printing = (key != 0 || key == KeyEvent.KEYCODE_SPACE);
+ boolean printing = (keymap.isPrintingKey(keyCode) || keyCode == KeyEvent.KEYCODE_SPACE);
// otherwise pass through to existing session
// print normal keys
if (printing) {
+ int curMetaState = event.getMetaState();
+
metaState &= ~(META_SLASH | META_TAB);
if ((metaState & META_SHIFT_MASK) != 0) {
@@ -182,6 +182,8 @@ public class TerminalKeyListener implements OnKeyListener, OnSharedPreferenceCha
bridge.redraw();
}
+ int key = keymap.get(keyCode, curMetaState);
+
if ((metaState & META_CTRL_MASK) != 0) {
metaState &= ~META_CTRL_ON;
bridge.redraw();