New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 715182 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug
Proj-XR



Sign in to add a comment

url bar is not shown after exiting presentation mode

Project Member Reported by dbbrooks@chromium.org, Apr 25 2017

Issue description

Chrome Version: 59.0.3071.24
OS: Android (Pixel)
VRCore: 1.4.151195927

What steps will reproduce the problem?
(1) go to https://webvr.info/samples/
(2) select 360 Degree Panorama
(3) Press enter VR button 
(4) hit x or press back button

What is the expected result? url bar is shown

What happens instead? url bar is not shown

This does not repro the second time. Press enter VR again, then exit presentation mode and it displays correctly. But return to the site using the repro steps above, and it will happen. 

 
no_bug.png
2.5 MB View Download
bug.png
2.5 MB View Download
 Issue 695959  has been merged into this issue.
Cc: mthiesse@chromium.org
Labels: -Pri-3 M-60 Pri-1
Owner: billorr@chromium.org
Status: Assigned (was: Untriaged)
This breaks the normal Chrome UI.
Feel free to pepper me with question Bill if you're taking this on. I expect there's some sort of race condition when restoring the UI when exiting VR.
Status: Started (was: Assigned)
Looking at this.  So far I've discovered that the metadata assocated with the next frame after we exit VR the first time causes controls to scroll offscreen.  Continuing to investigate.
When we enter VR the first time, an animation is scheduled to hide the browser controls.  When we exit vr, a frame of that animation finally plays (after we finish exiting VR).  This animation hides the controls.

Questions: Why does this scheduled animation not play, but continue to stay queued while we are in VR.  How can we clear it?
When we enter vr, we call VrShellImpl::swapToForegroundTab, which calls mTab.updateFullscreenEnabledState after we are in VR.  This causes the controls to hide/animate out because we are fullscreen.
Project Member

Comment 7 by bugdroid1@chromium.org, May 23 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/931b0527cd26875c0b6bc5645b9ae29f484ce6b1

commit 931b0527cd26875c0b6bc5645b9ae29f484ce6b1
Author: billorr <billorr@chromium.org>
Date: Tue May 23 19:00:19 2017

Ensure the address bar continues to show after dismissing WebVR.

When WebVR presentation exits, the address bar is sometimes hidden.  This is because when we enter VR, the browser controls try to animate out to hidden.  The animation doesn't actually render any frames because we block vsync.

We were trying to make the controls visible by calling mActivity.getFullscreenManager().setPositionsForTabToNonFullscreen, which targets pretty low in the stack for whether the controls should be visible (for the next rendered frame), but higher level components still think the controls are not visible.  We should call mTab.updateBrowserControlsState(BrowserControlsState.SHOWN, true); instead to mark the controls visible at a higher level in the stack so components throughout the stack agree on control visibility.

BUG= 715182 

Review-Url: https://codereview.chromium.org/2903443002
Cr-Commit-Position: refs/heads/master@{#474007}

[modify] https://crrev.com/931b0527cd26875c0b6bc5645b9ae29f484ce6b1/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
[modify] https://crrev.com/931b0527cd26875c0b6bc5645b9ae29f484ce6b1/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java

Status: Fixed (was: Started)
Verified in Chrome Canary 61.0.3124.3
Status: Verified (was: Fixed)
Components: Blink>WebXR

Sign in to add a comment