Fix mMenuIsDown tracking

Change-Id: I4aeb1f420c885181dc6016e317c2e716876db549
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 67be22e..93fb318 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -2589,6 +2589,12 @@
         return  mTabControl.getTab(pos);
     }
 
+    boolean isMenuOrCtrlKey(int keyCode) {
+        return (KeyEvent.KEYCODE_MENU == keyCode)
+                || (KeyEvent.KEYCODE_CTRL_LEFT == keyCode)
+                || (KeyEvent.KEYCODE_CTRL_RIGHT == keyCode);
+    }
+
     /**
      * handle key events in browser
      *
@@ -2600,10 +2606,7 @@
         boolean noModifiers = event.hasNoModifiers();
         // Even if MENU is already held down, we need to call to super to open
         // the IME on long press.
-        if (!noModifiers
-                && ((KeyEvent.KEYCODE_MENU == keyCode)
-                        || (KeyEvent.KEYCODE_CTRL_LEFT == keyCode)
-                        || (KeyEvent.KEYCODE_CTRL_RIGHT == keyCode))) {
+        if (!noModifiers && isMenuOrCtrlKey(keyCode)) {
             mMenuIsDown = true;
             return false;
         }
@@ -2723,9 +2726,10 @@
     }
 
     boolean onKeyUp(int keyCode, KeyEvent event) {
-        if (KeyEvent.KEYCODE_MENU == keyCode) {
+        if (isMenuOrCtrlKey(keyCode)) {
             mMenuIsDown = false;
-            if (event.isTracking() && !event.isCanceled()) {
+            if (KeyEvent.KEYCODE_MENU == keyCode
+                    && event.isTracking() && !event.isCanceled()) {
                 return onMenuKey();
             }
         }