Fix a problem that video does not show up in Chrome Shell.

Chrome Shell shows a black screen when we play a video.
Some parts of the fullscreen video feature was changed recently, but the changes were applied to only Content Shell.
Please refer to https://codereview.chromium.org/182493003.

Review URL: https://codereview.chromium.org/212663004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260315 0039d316-1c4b-4281-b951-d872f2087c98
parent 4fb752bb
......@@ -12,6 +12,7 @@ import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Toast;
import com.google.common.annotations.VisibleForTesting;
......@@ -33,6 +34,7 @@ import org.chromium.content.browser.ActivityContentVideoViewClient;
import org.chromium.content.browser.BrowserStartupController;
import org.chromium.content.browser.ContentView;
import org.chromium.content.browser.DeviceUtils;
import org.chromium.content.common.ContentSwitches;
import org.chromium.printing.PrintManagerDelegateImpl;
import org.chromium.printing.PrintingController;
import org.chromium.sync.signin.ChromeSigninController;
......@@ -130,7 +132,25 @@ public class ChromeShellActivity extends Activity implements AppMenuPropertiesDe
mWindow = sWindowAndroidFactory.getActivityWindowAndroid(this);
mWindow.restoreInstanceState(savedInstanceState);
mTabManager.initialize(mWindow, new ActivityContentVideoViewClient(this));
mTabManager.initialize(mWindow, new ActivityContentVideoViewClient(this) {
@Override
public void onShowCustomView(View view) {
super.onShowCustomView(view);
if (!CommandLine.getInstance().hasSwitch(
ContentSwitches.DISABLE_OVERLAY_FULLSCREEN_VIDEO_SUBTITLE)) {
mTabManager.setOverlayVideoMode(true);
}
}
@Override
public void onDestroyContentVideoView() {
super.onDestroyContentVideoView();
if (!CommandLine.getInstance().hasSwitch(
ContentSwitches.DISABLE_OVERLAY_FULLSCREEN_VIDEO_SUBTITLE)) {
mTabManager.setOverlayVideoMode(false);
}
}
});
String startupUrl = getUrlFromIntent(getIntent());
if (!TextUtils.isEmpty(startupUrl)) {
......
......@@ -78,6 +78,15 @@ public class TabManager extends LinearLayout {
mStartupUrl = startupUrl;
}
/**
* Enter or leave overlay video mode.
* @param enabled Whether overlay mode is enabled.
*/
public void setOverlayVideoMode(boolean enabled) {
if (mContentViewRenderView == null) return;
mContentViewRenderView.setOverlayVideoMode(enabled);
}
/**
* @return The currently visible {@link ChromeShellTab}.
*/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment