url bar is not shown after exiting presentation mode |
||||||
Issue descriptionChrome 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.
,
May 15 2017
This breaks the normal Chrome UI.
,
May 15 2017
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.
,
May 17 2017
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.
,
May 17 2017
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?
,
May 18 2017
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.
,
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
,
May 23 2017
,
Jun 9 2017
Verified in Chrome Canary 61.0.3124.3
,
Jun 9 2017
,
Jul 4
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by mthiesse@chromium.org
, Apr 27 2017