diff options
Diffstat (limited to 'data')
-rw-r--r-- | data/mobileterminal/_metadata/version | 2 | ||||
-rw-r--r-- | data/mobileterminal/arrowkeys.diff | 37 |
2 files changed, 38 insertions, 1 deletions
diff --git a/data/mobileterminal/_metadata/version b/data/mobileterminal/_metadata/version index c8699b1ba..c8af188d9 100644 --- a/data/mobileterminal/_metadata/version +++ b/data/mobileterminal/_metadata/version @@ -1 +1 @@ -364.1 +364.2 diff --git a/data/mobileterminal/arrowkeys.diff b/data/mobileterminal/arrowkeys.diff new file mode 100644 index 000000000..6f2151475 --- /dev/null +++ b/data/mobileterminal/arrowkeys.diff @@ -0,0 +1,37 @@ +diff -ru mobileterminal-364/Sources/MobileTerminal.m mobileterminal-364+iPhone/Sources/MobileTerminal.m +--- mobileterminal-364/Sources/MobileTerminal.m 2009-04-26 07:55:26.000000000 +0000 ++++ mobileterminal-364+iPhone/Sources/MobileTerminal.m 2010-03-26 05:01:43.000000000 +0000 +@@ -212,12 +212,27 @@ + - (void)handleKeyPress:(unichar)c + { + if (!controlKeyMode) { +- if (c == 0x2022) { +- controlKeyMode = YES; +- return; +- } else if (c == 0x0a) // LF from keyboard RETURN +- { +- c = 0x0d; // convert to CR ++ switch (c) { ++ case 0x2022: ++ controlKeyMode = YES; ++ return; ++ ++ case '\n': ++ c = '\r'; ++ break; ++ ++ case 0xf700: ++ [self.activeTerminal.process write:"\x1b[A" length:3]; ++ return; ++ case 0xf701: ++ [self.activeTerminal.process write:"\x1b[B" length:3]; ++ return; ++ case 0xf702: ++ [self.activeTerminal.process write:"\x1b[D" length:3]; ++ return; ++ case 0xf703: ++ [self.activeTerminal.process write:"\x1b[C" length:3]; ++ return; + } + } else { + // was in ctrl key mode, got another key |