OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.chrome.browser.compositor; | 5 package org.chromium.chrome.browser.compositor; |
6 | 6 |
7 import android.content.Context; | 7 import android.content.Context; |
8 import android.graphics.Canvas; | 8 import android.graphics.Canvas; |
9 import android.graphics.Color; | 9 import android.graphics.Color; |
10 import android.graphics.Paint; | 10 import android.graphics.Paint; |
(...skipping 957 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
968 } | 968 } |
969 mPendingInvalidations.clear(); | 969 mPendingInvalidations.clear(); |
970 } | 970 } |
971 | 971 |
972 /** | 972 /** |
973 * Detach and return the {@link TabModelSelector} in order to disconnect thi
s | 973 * Detach and return the {@link TabModelSelector} in order to disconnect thi
s |
974 * {@link CompositorViewHolder} so that VR can take ownership of Chrome's re
ndering. | 974 * {@link CompositorViewHolder} so that VR can take ownership of Chrome's re
ndering. |
975 * @return The detached {@link TabModelSelector}. | 975 * @return The detached {@link TabModelSelector}. |
976 */ | 976 */ |
977 public TabModelSelector detachForVR() { | 977 public TabModelSelector detachForVR() { |
978 mTabModelSelector.removeObserver(mTabModelSelectorObserver); | 978 if (mTabModelSelector != null) mTabModelSelector.removeObserver(mTabMode
lSelectorObserver); |
979 TabModelSelector selector = mTabModelSelector; | 979 TabModelSelector selector = mTabModelSelector; |
980 mTabModelSelector = null; | 980 mTabModelSelector = null; |
981 mLayerTitleCache.setTabModelSelector(null); | 981 mLayerTitleCache.setTabModelSelector(null); |
982 setTab(null); | 982 setTab(null); |
| 983 getSurfaceView().setVisibility(View.INVISIBLE); |
983 return selector; | 984 return selector; |
984 } | 985 } |
985 | 986 |
986 /** | 987 /** |
987 * Restores the {@link TabModelSelector} to this {@link CompositorViewHolder
} after exiting VR | 988 * Restores the {@link TabModelSelector} to this {@link CompositorViewHolder
} after exiting VR |
988 * so that it can take back ownership of Chrome's rendering. | 989 * so that it can take back ownership of Chrome's rendering. |
989 * @param tabModelSelector | 990 * @param tabModelSelector |
990 */ | 991 */ |
991 public void onExitVR(TabModelSelector tabModelSelector) { | 992 public void onExitVR(TabModelSelector tabModelSelector) { |
| 993 getSurfaceView().setVisibility(View.VISIBLE); |
992 attachToTabModelSelector(tabModelSelector); | 994 attachToTabModelSelector(tabModelSelector); |
993 } | 995 } |
994 | 996 |
995 private void attachToTabModelSelector(TabModelSelector tabModelSelector) { | 997 private void attachToTabModelSelector(TabModelSelector tabModelSelector) { |
996 assert mTabModelSelector == null; | 998 assert mTabModelSelector == null; |
997 mTabModelSelector = tabModelSelector; | 999 mTabModelSelector = tabModelSelector; |
998 mTabModelSelector.addObserver(mTabModelSelectorObserver); | 1000 mTabModelSelector.addObserver(mTabModelSelectorObserver); |
999 | 1001 |
1000 mLayerTitleCache.setTabModelSelector(mTabModelSelector); | 1002 mLayerTitleCache.setTabModelSelector(mTabModelSelector); |
1001 onContentChanged(); | 1003 onContentChanged(); |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1127 if (mPixelRect.width() == 0) { | 1129 if (mPixelRect.width() == 0) { |
1128 mPixelRect.right = mPixelRect.left + 1; | 1130 mPixelRect.right = mPixelRect.left + 1; |
1129 } | 1131 } |
1130 if (mPixelRect.height() == 0) { | 1132 if (mPixelRect.height() == 0) { |
1131 mPixelRect.bottom = mPixelRect.top + 1; | 1133 mPixelRect.bottom = mPixelRect.top + 1; |
1132 } | 1134 } |
1133 return mPixelRect; | 1135 return mPixelRect; |
1134 } | 1136 } |
1135 } | 1137 } |
1136 } | 1138 } |
OLD | NEW |