| Index: chrome/browser/android/vr_shell/vr_shell.cc
|
| diff --git a/chrome/browser/android/vr_shell/vr_shell.cc b/chrome/browser/android/vr_shell/vr_shell.cc
|
| index 66cc25e717ec5e57ebffcd523ed6362d2d6857aa..50fe97eb50699360161b528ba7711d2997cd86f4 100644
|
| --- a/chrome/browser/android/vr_shell/vr_shell.cc
|
| +++ b/chrome/browser/android/vr_shell/vr_shell.cc
|
| @@ -9,6 +9,7 @@
|
| #include "chrome/browser/android/vr_shell/vr_compositor.h"
|
| #include "chrome/browser/android/vr_shell/vr_gl_util.h"
|
| #include "chrome/browser/android/vr_shell/vr_math.h"
|
| +#include "chrome/browser/android/vr_shell/vr_shell_delegate.h"
|
| #include "chrome/browser/android/vr_shell/vr_shell_renderer.h"
|
| #include "content/public/browser/android/content_view_core.h"
|
| #include "content/public/browser/render_widget_host.h"
|
| @@ -65,7 +66,8 @@ VrShell::VrShell(JNIEnv* env, jobject obj,
|
| : desktop_screen_tilt_(kDesktopScreenTiltDefault),
|
| desktop_height_(kDesktopHeightDefault),
|
| desktop_position_(kDesktopPositionDefault),
|
| - content_cvc_(content_core) {
|
| + content_cvc_(content_core),
|
| + delegate_(nullptr) {
|
| j_vr_shell_.Reset(env, obj);
|
| content_compositor_view_.reset(new VrCompositor(content_window));
|
| ui_rects_.emplace_back(new ContentRectangle());
|
| @@ -99,7 +101,12 @@ bool RegisterVrShell(JNIEnv* env) {
|
| }
|
|
|
| VrShell::~VrShell() {
|
| - device::GvrDelegateManager::GetInstance()->Shutdown();
|
| +}
|
| +
|
| +void VrShell::SetDelegate(JNIEnv* env,
|
| + const base::android::JavaParamRef<jobject>& obj,
|
| + const base::android::JavaParamRef<jobject>& delegate) {
|
| + delegate_ = VrShellDelegate::getNativeDelegate(env, delegate);
|
| }
|
|
|
| void VrShell::GvrInit(JNIEnv* env,
|
| @@ -108,7 +115,8 @@ void VrShell::GvrInit(JNIEnv* env,
|
| gvr_api_ =
|
| gvr::GvrApi::WrapNonOwned(reinterpret_cast<gvr_context*>(native_gvr_api));
|
|
|
| - device::GvrDelegateManager::GetInstance()->Initialize(this);
|
| + if (delegate_)
|
| + delegate_->OnVrShellReady(this);
|
| }
|
|
|
| void VrShell::InitializeGl(JNIEnv* env,
|
| @@ -382,12 +390,10 @@ void VrShell::OnResume(JNIEnv* env, const JavaParamRef<jobject>& obj) {
|
| gvr_api_->ResumeTracking();
|
| }
|
|
|
| -void VrShell::RequestWebVRPresent() {
|
| - webvr_mode_ = true;
|
| -}
|
| -
|
| -void VrShell::ExitWebVRPresent() {
|
| - webvr_mode_ = false;
|
| +void VrShell::SetWebVrMode(JNIEnv* env,
|
| + const base::android::JavaParamRef<jobject>& obj,
|
| + bool enabled) {
|
| + webvr_mode_ = enabled;
|
| }
|
|
|
| void VrShell::SubmitWebVRFrame() {
|
|
|