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

Side by Side Diff: chrome/browser/android/vr_shell/ui_scene_manager.cc

Issue 2832873003: Add missing content quad element to native scene manager. (Closed)
Patch Set: Created 3 years, 8 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/android/vr_shell/ui_scene_manager.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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 #include "chrome/browser/android/vr_shell/ui_scene_manager.h" 5 #include "chrome/browser/android/vr_shell/ui_scene_manager.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "chrome/browser/android/vr_shell/ui_element.h" 8 #include "chrome/browser/android/vr_shell/ui_element.h"
9 #include "chrome/browser/android/vr_shell/ui_scene.h" 9 #include "chrome/browser/android/vr_shell/ui_scene.h"
10 10
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 // element->center_color = {128, 128, 128, 0.5}; 55 // element->center_color = {128, 128, 128, 0.5};
56 element->fill = vr_shell::Fill::NONE; 56 element->fill = vr_shell::Fill::NONE;
57 element->size = {0.512f, 0.160f, 1}; 57 element->size = {0.512f, 0.160f, 1};
58 element->scale = {kWarningDistance, kWarningDistance, 1}; 58 element->scale = {kWarningDistance, kWarningDistance, 1};
59 element->translation = {0, 0, -kWarningDistance}; 59 element->translation = {0, 0, -kWarningDistance};
60 element->visible = false; 60 element->visible = false;
61 element->hit_testable = false; 61 element->hit_testable = false;
62 element->lock_to_fov = true; 62 element->lock_to_fov = true;
63 transient_security_warning_ = element.get(); 63 transient_security_warning_ = element.get();
64 scene_->AddUiElement(std::move(element)); 64 scene_->AddUiElement(std::move(element));
65
66 // Main web content quad.
67 element = base::MakeUnique<UiElement>();
68 element->id = id++;
69 element->name = "Content";
70 element->fill = vr_shell::Fill::CONTENT;
71 element->size = {(1.6f * (16 / 9)), 1.6f, 1};
72 element->translation = {0, 0, -2};
73 element->visible = false;
74 main_content_ = element.get();
75 scene_->AddUiElement(std::move(element));
65 } 76 }
66 77
67 UiSceneManager::~UiSceneManager() {} 78 UiSceneManager::~UiSceneManager() {}
68 79
69 base::WeakPtr<UiSceneManager> UiSceneManager::GetWeakPtr() { 80 base::WeakPtr<UiSceneManager> UiSceneManager::GetWeakPtr() {
70 return weak_ptr_factory_.GetWeakPtr(); 81 return weak_ptr_factory_.GetWeakPtr();
71 } 82 }
72 83
73 void UiSceneManager::SetWebVRMode(bool web_vr) { 84 void UiSceneManager::SetWebVRMode(bool web_vr) {
74 web_vr_mode_ = web_vr; 85 web_vr_mode_ = web_vr;
86 main_content_->visible = !web_vr_mode_;
75 ConfigureSecurityWarnings(); 87 ConfigureSecurityWarnings();
76 } 88 }
77 89
78 void UiSceneManager::SetWebVRSecureOrigin(bool secure) { 90 void UiSceneManager::SetWebVRSecureOrigin(bool secure) {
79 secure_origin_ = secure; 91 secure_origin_ = secure;
80 ConfigureSecurityWarnings(); 92 ConfigureSecurityWarnings();
81 } 93 }
82 94
83 void UiSceneManager::ConfigureSecurityWarnings() { 95 void UiSceneManager::ConfigureSecurityWarnings() {
84 bool enabled = web_vr_mode_ && !secure_origin_; 96 bool enabled = web_vr_mode_ && !secure_origin_;
85 permanent_security_warning_->visible = enabled; 97 permanent_security_warning_->visible = enabled;
86 transient_security_warning_->visible = enabled; 98 transient_security_warning_->visible = enabled;
87 if (enabled) { 99 if (enabled) {
88 security_warning_timer_.Start( 100 security_warning_timer_.Start(
89 FROM_HERE, base::TimeDelta::FromSeconds(kWarningTimeoutSeconds), this, 101 FROM_HERE, base::TimeDelta::FromSeconds(kWarningTimeoutSeconds), this,
90 &UiSceneManager::OnSecurityWarningTimer); 102 &UiSceneManager::OnSecurityWarningTimer);
91 } else { 103 } else {
92 security_warning_timer_.Stop(); 104 security_warning_timer_.Stop();
93 } 105 }
94 } 106 }
95 107
96 void UiSceneManager::OnSecurityWarningTimer() { 108 void UiSceneManager::OnSecurityWarningTimer() {
97 transient_security_warning_->visible = false; 109 transient_security_warning_->visible = false;
98 } 110 }
99 111
100 } // namespace vr_shell 112 } // namespace vr_shell
OLDNEW
« no previous file with comments | « chrome/browser/android/vr_shell/ui_scene_manager.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698