Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(565)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java

Issue 2641043002: Implement detaching the TabModelSelector from the CompositorViewHolder (Closed)
Patch Set: Fix compile Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java
index 5ad5b77077b35e11cea299f729d3a9c6781c0349..fd53a6590c01d0f9c0ffdae4a2d28602ca1670f6 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java
@@ -26,8 +26,10 @@ import org.chromium.base.annotations.JNINamespace;
import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.ChromeVersionInfo;
import org.chromium.chrome.browser.WebContentsFactory;
+import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabRedirectHandler;
+import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.content.browser.ContentView;
import org.chromium.content.browser.ContentViewCore;
import org.chromium.content_public.browser.WebContents;
@@ -60,6 +62,7 @@ public class VrShellImpl extends GvrLayout implements VrShell, SurfaceHolder.Cal
private static final float DEFAULT_UI_HEIGHT = 1080f;
private final Activity mActivity;
+ private final CompositorViewHolder mCompositorViewHolder;
private final VirtualDisplayAndroid mContentVirtualDisplay;
private final VirtualDisplayAndroid mUiVirtualDisplay;
@@ -83,10 +86,13 @@ public class VrShellImpl extends GvrLayout implements VrShell, SurfaceHolder.Cal
private boolean mReprojectedRendering;
private TabRedirectHandler mNonVrTabRedirectHandler;
+ private TabModelSelector mTabModelSelector;
- public VrShellImpl(Activity activity) {
+ public VrShellImpl(Activity activity, CompositorViewHolder compositorViewHolder) {
super(activity);
mActivity = activity;
+ mCompositorViewHolder = compositorViewHolder;
+ mTabModelSelector = mCompositorViewHolder.detachForVR();
mUiCVCContainer = new FrameLayout(getContext()) {
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
@@ -183,6 +189,7 @@ public class VrShellImpl extends GvrLayout implements VrShell, SurfaceHolder.Cal
mOriginalWindowAndroid = mContentCVC.getWindowAndroid();
mTab.updateWindowAndroid(mContentVrWindowAndroid);
+ mContentCVC.onAttachedToWindow();
}
@CalledByNative
@@ -263,6 +270,7 @@ public class VrShellImpl extends GvrLayout implements VrShell, SurfaceHolder.Cal
nativeDestroy(mNativeVrShell);
mNativeVrShell = 0;
}
+ mCompositorViewHolder.onExitVR(mTabModelSelector);
mTab.setTabRedirectHandler(mNonVrTabRedirectHandler);
mTab.updateWindowAndroid(mOriginalWindowAndroid);
mContentCVC.onSizeChanged(mContentCVC.getContainerView().getWidth(),

Powered by Google App Engine
This is Rietveld 408576698