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

Unified Diff: chrome/browser/android/vr_shell/vr_gl_thread.cc

Issue 2866853002: VR: Wire VrShell UI-related state to the scene manager. (Closed)
Patch Set: Created 3 years, 7 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/browser/android/vr_shell/vr_gl_thread.cc
diff --git a/chrome/browser/android/vr_shell/vr_gl_thread.cc b/chrome/browser/android/vr_shell/vr_gl_thread.cc
index 0fc3ea0e6782a83f2e5fa46dea755c9945b9bae9..e98c4eb7399bb623470330f84112b3dd1bda1daf 100644
--- a/chrome/browser/android/vr_shell/vr_gl_thread.cc
+++ b/chrome/browser/android/vr_shell/vr_gl_thread.cc
@@ -36,7 +36,9 @@ void VrGLThread::Init() {
scene_ = base::MakeUnique<UiScene>();
vr_shell_gl_ = base::MakeUnique<VrShellGl>(
this, gvr_api_, initially_web_vr_, reprojected_rendering_, scene_.get());
+
scene_manager_ = base::MakeUnique<UiSceneManager>(this, scene_.get());
+ scene_manager_->SetWebVRMode(initially_web_vr_);
weak_vr_shell_gl_ = vr_shell_gl_->GetWeakPtr();
weak_scene_manager_ = scene_manager_->GetWeakPtr();
@@ -59,18 +61,18 @@ void VrGLThread::UpdateGamepadData(device::GvrGamepadData pad) {
FROM_HERE, base::Bind(&VrShell::UpdateGamepadData, weak_vr_shell_, pad));
}
-void VrGLThread::AppButtonGesturePerformed(UiInterface::Direction direction) {
- main_thread_task_runner_->PostTask(
- FROM_HERE, base::Bind(&VrShell::AppButtonGesturePerformed, weak_vr_shell_,
- direction));
-}
-
-void VrGLThread::OnAppButtonClicked() {
+void VrGLThread::AppButtonClicked() {
weak_vr_shell_gl_->GetTaskRunner()->PostTask(
FROM_HERE,
base::Bind(&UiSceneManager::OnAppButtonClicked, weak_scene_manager_));
}
+void VrGLThread::AppButtonGesturePerformed(UiInterface::Direction direction) {
+ weak_vr_shell_gl_->GetTaskRunner()->PostTask(
mthiesse 2017/05/08 16:04:55 Should this be task_runner()->PostTask()?
cjgrant 2017/05/08 19:17:22 Done. Good call.
+ FROM_HERE, base::Bind(&UiSceneManager::OnAppButtonGesturePerformed,
+ weak_scene_manager_, direction));
+}
+
void VrGLThread::ProcessContentGesture(
std::unique_ptr<blink::WebInputEvent> event) {
main_thread_task_runner_->PostTask(
@@ -96,6 +98,55 @@ void VrGLThread::OnContentPaused(bool enabled) {
base::Bind(&VrShell::OnContentPaused, weak_vr_shell_, enabled));
}
+void VrGLThread::SetWebVr(bool enabled) {}
+
+void VrGLThread::SetURL(const GURL& gurl) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE, base::Bind(&UiSceneManager::SetURL,
+ weak_scene_manager_, gurl));
+}
+
+void VrGLThread::SetFullscreen(bool enabled) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE, base::Bind(&UiSceneManager::SetFullscreen,
+ weak_scene_manager_, enabled));
+}
+
+void VrGLThread::SetSecurityLevel(int level) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE,
+ base::Bind(&UiSceneManager::SetSecurityLevel,
+ weak_scene_manager_, level));
+}
+
+void VrGLThread::SetWebVRSecureOrigin(bool secure) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE,
+ base::Bind(&UiSceneManager::SetWebVRSecureOrigin,
+ weak_scene_manager_, secure));
+}
+
+void VrGLThread::SetLoading(bool loading) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE, base::Bind(&UiSceneManager::SetLoading,
+ weak_scene_manager_, loading));
+}
+
+void VrGLThread::SetLoadProgress(double progress) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(FROM_HERE,
+ base::Bind(&UiSceneManager::SetLoadProgress,
+ weak_scene_manager_, progress));
+}
+
+void VrGLThread::SetHistoryButtonsEnabled(bool can_go_back,
+ bool can_go_forward) {
+ WaitUntilThreadStarted();
+ task_runner()->PostTask(
+ FROM_HERE, base::Bind(&UiSceneManager::SetHistoryButtonsEnabled,
+ weak_scene_manager_, can_go_forward, can_go_back));
+}
+
void VrGLThread::CleanUp() {
scene_manager_.reset();
vr_shell_gl_.reset();

Powered by Google App Engine
This is Rietveld 408576698