Mercurial > 510Connectbot
diff src/com/five_ten_sg/connectbot/service/TerminalKeyListener.java @ 52:0e3fc85d0586 tn5250
start tn5250 integration
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Wed, 11 Jun 2014 12:18:18 -0700 |
parents | 8c6de858bb73 |
children | e872762ec105 |
line wrap: on
line diff
--- a/src/com/five_ten_sg/connectbot/service/TerminalKeyListener.java Wed Jun 11 11:54:52 2014 -0700 +++ b/src/com/five_ten_sg/connectbot/service/TerminalKeyListener.java Wed Jun 11 12:18:18 2014 -0700 @@ -121,6 +121,10 @@ buffer.write(0x1b); } + protected void sendEncoded(String s) { + buffer.write(s.getBytes(encoding)); + } + /** * Handle onKey() events coming down from a {@link com.five_ten_sg.connectbot.TerminalView} above us. * Modify the keys to make more sense to a host then pass it to the vt320. @@ -198,8 +202,7 @@ if (keyCode == KeyEvent.KEYCODE_UNKNOWN && event.getAction() == KeyEvent.ACTION_MULTIPLE) { - byte[] input = event.getCharacters().getBytes(encoding); - buffer.write(input); + sendEncoded(event.getCharacters()); return true; } @@ -289,9 +292,7 @@ if (uchar < 0x80) buffer.write(uchar); else - // TODO write encoding routine that doesn't allocate each time - buffer.write(new String(Character.toChars(uchar)) - .getBytes(encoding)); + sendEncoded(new String(Character.toChars(uchar))); return true; } @@ -794,7 +795,7 @@ } } - private void metaKeyUp(int code) { + protected void metaKeyUp(int code) { if ((metaState & code) != 0) { metaState &= ~code; bridge.redraw();