diff options
author | Kenny Root <kenny@the-b.org> | 2009-07-04 13:42:35 +0000 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2009-07-04 13:42:35 +0000 |
commit | e1f93cdb7d17a52e38adb7c09c34fd7ace25d28f (patch) | |
tree | 809eff1d826fba29f5bb10aea31ae1282cfdd513 /src | |
parent | 2ca280d2bcfec320e1e25bd5800f4675e71a57c6 (diff) | |
download | connectbot-e1f93cdb7d17a52e38adb7c09c34fd7ace25d28f.tar.gz connectbot-e1f93cdb7d17a52e38adb7c09c34fd7ace25d28f.tar.bz2 connectbot-e1f93cdb7d17a52e38adb7c09c34fd7ace25d28f.zip |
Restore some Fn key functionality for hardware keyboard users
git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@353 df292f66-193f-0410-a5fc-6d59da041ff2
Diffstat (limited to 'src')
-rw-r--r-- | src/org/connectbot/service/TerminalBridge.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/org/connectbot/service/TerminalBridge.java b/src/org/connectbot/service/TerminalBridge.java index f66d89c..a79668d 100644 --- a/src/org/connectbot/service/TerminalBridge.java +++ b/src/org/connectbot/service/TerminalBridge.java @@ -520,6 +520,8 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { if (printing) { int curMetaState = event.getMetaState(); + boolean oppositeShift = (metaState & META_TAB) != 0; + metaState &= ~(META_SLASH | META_TAB); if ((metaState & META_SHIFT_MASK) != 0) { @@ -554,7 +556,7 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { } // handle pressing f-keys - if ((metaState & META_TAB) != 0) { + if (oppositeShift) { switch(key) { case '!': ((vt320)buffer).keyPressed(vt320.KEY_F1, ' ', 0); return true; case '@': ((vt320)buffer).keyPressed(vt320.KEY_F2, ' ', 0); return true; @@ -583,6 +585,7 @@ public class TerminalBridge implements VDUDisplay, OnKeyListener { event.getAction() == KeyEvent.ACTION_MULTIPLE) { byte[] input = event.getCharacters().getBytes(host.getEncoding()); transport.write(input); + return true; } // try handling keymode shortcuts |