When long pressing on title bar, do not use WebView in onCreateContextMenu
Fix for http://b/issue?id=2456405
Override TitleBar::createContextMenu to call BrowserActivity's onCreateContextMenu
directly, so that WebView is ignored, and we only get the options for TitleBar.
diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java
index 52a3125..fc337f9 100644
--- a/src/com/android/browser/BrowserActivity.java
+++ b/src/com/android/browser/BrowserActivity.java
@@ -1693,6 +1693,9 @@
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
+ if (v instanceof TitleBar) {
+ return;
+ }
WebView webview = (WebView) v;
WebView.HitTestResult result = webview.getHitTestResult();
if (result == null) {
diff --git a/src/com/android/browser/TitleBar.java b/src/com/android/browser/TitleBar.java
index 15b1d44..98667c3 100644
--- a/src/com/android/browser/TitleBar.java
+++ b/src/com/android/browser/TitleBar.java
@@ -141,9 +141,10 @@
};
@Override
- protected void onCreateContextMenu(ContextMenu menu) {
+ public void createContextMenu(ContextMenu menu) {
MenuInflater inflater = mBrowserActivity.getMenuInflater();
inflater.inflate(R.menu.title_context, menu);
+ mBrowserActivity.onCreateContextMenu(menu, this, null);
}
@Override