| Index: chrome/browser/android/vr_shell/ui_scene_manager.cc
|
| diff --git a/chrome/browser/android/vr_shell/ui_scene_manager.cc b/chrome/browser/android/vr_shell/ui_scene_manager.cc
|
| index 2ef910a78a2dcdd55fdd39a1e68c1f4595681cfc..7f9b2f658ab81bada9628c785aa483787f648fc4 100644
|
| --- a/chrome/browser/android/vr_shell/ui_scene_manager.cc
|
| +++ b/chrome/browser/android/vr_shell/ui_scene_manager.cc
|
| @@ -89,8 +89,7 @@ UiSceneManager::UiSceneManager(VrBrowserInterface* browser,
|
| CreateSecurityWarnings();
|
| CreateSystemIndicators();
|
| CreateUrlBar();
|
| - if (in_cct_)
|
| - CreateCloseButton();
|
| + CreateCloseButton();
|
| CreateScreenDimmer();
|
|
|
| ConfigureScene();
|
| @@ -297,7 +296,7 @@ void UiSceneManager::CreateCloseButton() {
|
| gfx::Vector3dF(0, kContentVerticalOffset - (kContentHeight / 2) - 0.3,
|
| -kContentDistance + 0.4));
|
| element->set_size(gfx::Vector3dF(0.2, 0.2, 1));
|
| - control_elements_.push_back(element.get());
|
| + close_button_ = element.get();
|
| scene_->AddUiElement(std::move(element));
|
| }
|
|
|
| @@ -326,6 +325,10 @@ void UiSceneManager::ConfigureScene() {
|
| element->SetEnabled(controls_visible);
|
| }
|
|
|
| + // Close button is a special control element that needs to be hidden when in
|
| + // WebVR, but it needs to be visible when in cct or fullscreen.
|
| + close_button_->SetEnabled(!web_vr_mode_ && (fullscreen_ || in_cct_));
|
| +
|
| // Content elements.
|
| for (UiElement* element : content_elements_) {
|
| element->SetEnabled(!web_vr_mode_);
|
| @@ -337,11 +340,19 @@ void UiSceneManager::ConfigureScene() {
|
| main_content_->set_translation(
|
| {0, kFullscreenVerticalOffset, -kFullscreenDistance});
|
| main_content_->set_size({kFullscreenWidth, kFullscreenHeight, 1});
|
| +
|
| + close_button_->set_translation(gfx::Vector3dF(
|
| + 0, kFullscreenVerticalOffset - (kFullscreenHeight / 2) - 0.1,
|
| + -kFullscreenDistance + 0.4));
|
| } else {
|
| // Note that main_content_ is already visible in this case.
|
| main_content_->set_translation(
|
| {0, kContentVerticalOffset, -kContentDistance});
|
| main_content_->set_size({kContentWidth, kContentHeight, 1});
|
| +
|
| + close_button_->set_translation(
|
| + gfx::Vector3dF(0, kContentVerticalOffset - (kContentHeight / 2) - 0.3,
|
| + -kContentDistance + 0.4));
|
| }
|
|
|
| scene_->SetMode(mode());
|
| @@ -354,9 +365,9 @@ void UiSceneManager::UpdateBackgroundColor() {
|
| // TODO(vollick): it would be nice if ceiling, floor and the grid were
|
| // UiElement subclasses and could respond to the OnSetMode signal.
|
| ceiling_->set_center_color(color_scheme().ceiling);
|
| - ceiling_->set_edge_color(color_scheme().horizon);
|
| + ceiling_->set_edge_color(color_scheme().world_background);
|
| floor_->set_center_color(color_scheme().floor);
|
| - floor_->set_edge_color(color_scheme().horizon);
|
| + floor_->set_edge_color(color_scheme().world_background);
|
| floor_->set_grid_color(color_scheme().floor_grid);
|
| }
|
|
|
| @@ -453,7 +464,12 @@ void UiSceneManager::SetHistoryButtonsEnabled(bool can_go_back,
|
| }
|
|
|
| void UiSceneManager::OnCloseButtonClicked() {
|
| - browser_->ExitCct();
|
| + if (fullscreen_) {
|
| + browser_->ExitFullscreen();
|
| + }
|
| + if (in_cct_) {
|
| + browser_->ExitCct();
|
| + }
|
| }
|
|
|
| void UiSceneManager::OnUnsupportedMode(UiUnsupportedMode mode) {
|
|
|