Support fallback key events
Bug: 6023055
Change-Id: Ifc36425d6b09d0938f7e08176a749159c27fe088
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index fcbe387..3ebaa28 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -945,14 +945,15 @@
}
@Override
- public void onUnhandledKeyEvent(KeyEvent event) {
+ public boolean onUnhandledKeyEvent(KeyEvent event) {
if (!isActivityPaused()) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
- mActivity.onKeyDown(event.getKeyCode(), event);
+ return mActivity.onKeyDown(event.getKeyCode(), event);
} else {
- mActivity.onKeyUp(event.getKeyCode(), event);
+ return mActivity.onKeyUp(event.getKeyCode(), event);
}
}
+ return false;
}
@Override
diff --git a/src/com/android/browser/PreloadController.java b/src/com/android/browser/PreloadController.java
index 0efe119..66b89f4 100644
--- a/src/com/android/browser/PreloadController.java
+++ b/src/com/android/browser/PreloadController.java
@@ -130,8 +130,9 @@
}
@Override
- public void onUnhandledKeyEvent(KeyEvent event) {
+ public boolean onUnhandledKeyEvent(KeyEvent event) {
if (LOGD_ENABLED) Log.d(LOGTAG, "onUnhandledKeyEvent()");
+ return false;
}
@Override
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java
index 04bee08..62f9548 100644
--- a/src/com/android/browser/Tab.java
+++ b/src/com/android/browser/Tab.java
@@ -895,7 +895,9 @@
if (!mInForeground) {
return;
}
- mWebViewController.onUnhandledKeyEvent(event);
+ if (!mWebViewController.onUnhandledKeyEvent(event)) {
+ super.onUnhandledKeyEvent(view, event);
+ }
}
@Override
diff --git a/src/com/android/browser/WebViewController.java b/src/com/android/browser/WebViewController.java
index 30eec4f..235fe97 100644
--- a/src/com/android/browser/WebViewController.java
+++ b/src/com/android/browser/WebViewController.java
@@ -63,7 +63,7 @@
boolean shouldOverrideKeyEvent(KeyEvent event);
- void onUnhandledKeyEvent(KeyEvent event);
+ boolean onUnhandledKeyEvent(KeyEvent event);
void doUpdateVisitedHistory(Tab tab, boolean isReload);