summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Wright <michaelwr@google.com>2013-02-26 11:09:12 -0800
committerMichael Wright <michaelwr@google.com>2013-02-26 11:13:27 -0800
commitc8be1790590605603a8dca8f9ee93327c916de3f (patch)
treea00c1490fe283a9e54c91489f12c8a08e319f1ce /src
parent303dab01fa211d0da20136049196e3321241cad8 (diff)
downloadandroid_packages_apps_Terminal-c8be1790590605603a8dca8f9ee93327c916de3f.tar.gz
android_packages_apps_Terminal-c8be1790590605603a8dca8f9ee93327c916de3f.tar.bz2
android_packages_apps_Terminal-c8be1790590605603a8dca8f9ee93327c916de3f.zip
Added input error handling and enabled keyboard input
Change-Id: Ie74da0b39d9002802c76dc3ceecd5082e7504f26
Diffstat (limited to 'src')
-rw-r--r--src/com/android/terminal/Terminal.java8
-rw-r--r--src/com/android/terminal/TerminalKeys.java10
2 files changed, 8 insertions, 10 deletions
diff --git a/src/com/android/terminal/Terminal.java b/src/com/android/terminal/Terminal.java
index 5d1e6d6..35c2cee 100644
--- a/src/com/android/terminal/Terminal.java
+++ b/src/com/android/terminal/Terminal.java
@@ -152,11 +152,11 @@ public class Terminal {
}
public boolean dispatchKey(int modifiers, int key) {
- return nativeDispatchKey(mNativePtr, modifiers, key) == 0;
+ return nativeDispatchKey(mNativePtr, modifiers, key);
}
public boolean dispatchCharacter(int modifiers, int character) {
- return nativeDispatchCharacter(mNativePtr, modifiers, character) == 0;
+ return nativeDispatchCharacter(mNativePtr, modifiers, character);
}
@@ -170,6 +170,6 @@ public class Terminal {
private static native int nativeGetRows(int ptr);
private static native int nativeGetCols(int ptr);
- private static native int nativeDispatchKey(int ptr, int modifiers, int key);
- private static native int nativeDispatchCharacter(int ptr, int modifiers, int character);
+ private static native boolean nativeDispatchKey(int ptr, int modifiers, int key);
+ private static native boolean nativeDispatchCharacter(int ptr, int modifiers, int character);
}
diff --git a/src/com/android/terminal/TerminalKeys.java b/src/com/android/terminal/TerminalKeys.java
index e77085a..17cab5e 100644
--- a/src/com/android/terminal/TerminalKeys.java
+++ b/src/com/android/terminal/TerminalKeys.java
@@ -168,30 +168,28 @@ public class TerminalKeys implements View.OnKeyListener {
}
public boolean onKey(View v, int keyCode, KeyEvent event) {
- if (mTerm == null) return false;
+ if (mTerm == null || event.getAction() == KeyEvent.ACTION_UP) return false;
int modifiers = getModifiers(event);
int c = getKey(event);
if (c != 0) {
- mTerm.dispatchKey(modifiers, c);
if (DEBUG) {
Log.d(TAG, "dispatched key event: " +
"mod=" + modifiers + ", " +
- "keys=" + getKeyName(keyCode));
+ "keys=" + getKeyName(c));
}
- return true;
+ return mTerm.dispatchKey(modifiers, c);
}
c = getCharacter(event);
if (c != 0) {
- mTerm.dispatchKey(modifiers, c);
if (DEBUG) {
Log.d(TAG, "dispatched key event: " +
"mod=" + modifiers + ", " +
"character='" + new String(Character.toChars(c)) + "'");
}
- return true;
+ return mTerm.dispatchCharacter(modifiers, c);
}
return false;