Fix and hide action bar for html5 video

 Bug: 3304569

Change-Id: Ic794b4f704c5da01a93990e08ec89b5c26ffc937
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index ab6578a..b7a39a2 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -1048,6 +1048,7 @@
             // view is showing.
             mOldMenuState = mMenuState;
             mMenuState = EMPTY_MENU;
+            mActivity.invalidateOptionsMenu();
         }
     }
 
@@ -1058,6 +1059,7 @@
             // Reset the old menu state.
             mMenuState = mOldMenuState;
             mOldMenuState = EMPTY_MENU;
+            mActivity.invalidateOptionsMenu();
         }
     }
 
@@ -1187,6 +1189,9 @@
     // TODO: maybe put into separate handler
 
     protected boolean onCreateOptionsMenu(Menu menu) {
+        if (mMenuState == EMPTY_MENU) {
+            return false;
+        }
         MenuInflater inflater = mActivity.getMenuInflater();
         inflater.inflate(R.menu.browser, menu);
         updateInLoadMenuItems(menu);
diff --git a/src/com/android/browser/XLargeUi.java b/src/com/android/browser/XLargeUi.java
index dcba39b..f45b0a1 100644
--- a/src/com/android/browser/XLargeUi.java
+++ b/src/com/android/browser/XLargeUi.java
@@ -24,6 +24,8 @@
 import android.util.Log;
 import android.view.ActionMode;
 import android.view.Gravity;
+import android.view.View;
+import android.webkit.WebChromeClient.CustomViewCallback;
 import android.webkit.WebView;
 import android.widget.FrameLayout;
 import android.widget.FrameLayout.LayoutParams;
@@ -349,5 +351,19 @@
         mFakeTitleBar.setDisplayTitle(url);
     }
 
+    @Override
+    public void showCustomView(View view, CustomViewCallback callback) {
+        super.showCustomView(view, callback);
+        mActivity.getActionBar().hide();
+    }
 
+    @Override
+    public void onHideCustomView() {
+        super.onHideCustomView();
+        if (mUseQuickControls) {
+            checkTabCount();
+        } else {
+            mActivity.getActionBar().show();
+        }
+    }
 }