Empty bottom sheet appears after exiting VR |
|||||||||||||
Issue descriptionThe bottom sheet is incorrectly being triggered after exiting vr. It looks to be a problem with the actual bottom sheet rather than an issue with the content since the sheet is completely empty.
,
May 8 2018
,
May 10 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ef2cb9dc17ac85313f67b0a737a0f4d378e0416a commit ef2cb9dc17ac85313f67b0a737a0f4d378e0416a Author: Matthew Jones <mdjones@chromium.org> Date: Thu May 10 00:02:41 2018 Don't peek bottom sheet after exiting VR This patch cleans up more cruft from Chrome Home. The sheet's default state is no longer peeking, which is what the removed logic assumed. Bug: 840481 Change-Id: I4d38144806b87207904f4d354a013f1774457db2 Reviewed-on: https://chromium-review.googlesource.com/1048396 Reviewed-by: Theresa <twellington@chromium.org> Commit-Queue: Matthew Jones <mdjones@chromium.org> Cr-Commit-Position: refs/heads/master@{#557384} [modify] https://crrev.com/ef2cb9dc17ac85313f67b0a737a0f4d378e0416a/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java
,
May 10 2018
,
May 28 2018
I'm still seeing this show up after exiting WebVR on today's Canary (69.0.3441.0)
,
May 28 2018
,
May 28 2018
,
May 29 2018
I haven't been able to reproduce the empty sheet. I can make the sheet show using the following steps: - Trigger EoC on some page - Go to tab with vr.chromeexperiments.com - Enter VR - Exit VR The sheet then shows with VR related content. That particular issue looks to be on the side of EoC triggering since fullscreen updates the browser controls. Are you seeing something different?
,
May 29 2018
vr.chromeexperiments.com doesn't actually use WebVR :/ Long story. Can you try instead with https://webvr.info/samples/03-vr-presentation.html? (if it doesn't ask you to go through headset insertion and controller pairing, it isn't actually webVR and is probably just using the Cardboard headset polyfill)
,
Jun 12 2018
Issue 843178 has been merged into this issue.
,
Jul 31
Is this still reproducible? If so, can it be repro'ed with the new toolbar button?
,
Jul 31
Still reproducible when exiting VR. Don't know about the new toolbar button.
,
Jul 31
Instructions for switching to the toolbar button: 1. Use Chrome version 69.0.3489.0+ 2. Go to chrome://flags and enable "Chrome Modern Design" and "Contextual Suggestions Button" flags. Make sure "Contextual Suggestions Bottom Sheet" is disabled. 3. Restart Chrome twice
,
Aug 28
Lowering the priority until we have a launch target for EoC.
,
Sep 25
Issue 884806 has been merged into this issue.
,
Sep 25
This is still happening in Canary, but not in ToT. What is the related flag?
,
Oct 3
"Contextual Suggestions Button" is the related flag. We have a launch target now (M71) so bumping the priority back up. We should figure out if this is still happening and if so investigate a fix.
,
Oct 5
This is reproducible for me on ToT, including the proposed https://crrev.com/c/1263568 that's intended to fix the bottom-margin issue from issue 884803. For the record, the flag names have changed since the comment #13 instructions, I've enabled the following: "Chrome Duet" mode: chrome://flags#enable-chrome-duet "Contextual Suggestions Button": chrome://flags#contextual-suggestions-button
,
Oct 5
FWIW, if I drag the white sheet upwards, I get a crash in BottomSheet.java:
10-05 11:52:34.164 1162 1162 I ActivityManager: Config changes=200 {1.0 ?mcc?mnc [en_US] ldltr sw392dp w737dp h368dp 440dpi nrml long hdr widecg land finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 2028) mAppBounds=Rect(0, 0 - 2028, 1080) mWindowingMode=fullscreen mActivityType=undefined} android.arch.lifecycle.ReflectiveGenericLifecycleObserver$MethodReference.75}
10-05 11:52:34.174 3865 3881 E libc : Access denied finding property "vendor.debug.egl.changepixelformat"
10-05 11:52:34.210 1162 1162 I ActivityManager: Override config changes=20000200 {1.0 ?mcc?mnc [en_US] ldltr sw392dp w737dp h368dp 440dpi nrml long hdr widecg land finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 2028) mAppBounds=Rect(0, 0 - 2028, 1080) mWindowingMode=fullscreen mActivityType=undefined} s.75} for displayId=0
10-05 11:52:34.393 3778 3778 E cr_BkgrdTaskJS: Tried finishing non-current BackgroundTask.
10-05 11:52:36.740 3778 3778 D AndroidRuntime: Shutting down com.google.android.libraries.feed.sharedstream.offlinemonitor.StreamOfflineMonitor$$Lambda$0
10-05 11:52:36.747 3778 3778 E AndroidRuntime: FATAL EXCEPTION: main
10-05 11:52:36.747 3778 3778 E AndroidRuntime: Process: org.chromium.chrome, PID: 3778
10-05 11:52:36.747 3778 3778 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke interface method 'int bNl.i()' on a null object reference
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.setInternalCurrentState$255f295(BottomSheet.java:1331)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$000(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$002(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$1000(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$1100(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$1402(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet.access$1500$13ad29a8(BottomSheet.java:66)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at org.chromium.chrome.browser.widget.bottomsheet.BottomSheet$6.onAnimationEnd(BottomSheet.java:1058)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.Animator$AnimatorListener.onAnimationEnd(Animator.java:552)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.ValueAnimator.endAnimation(ValueAnimator.java:1232)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1474)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:146)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.AnimationHandler.access$100(AnimationHandler.java:37)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:54)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:947)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:761)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:693)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:873)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
10-05 11:52:36.747 3778 3778 E AndroidRuntime: at android.os.Looper.loop(Looper.java:193)
Also, if I disable "Contextual Suggestions Button", I don't get the white sheet and don't get a crash, the bottom controls appear and work normally after exiting VR.
,
Oct 5
Sounds like we need to fix this before launch.
,
Oct 5
Here's the repro steps I'm using: - Daydream-compatible phone + Daydream View headset required. Launch the Daydream app and confirm that Daydream Home works in VR mode. If it's showing the VR tutorial, you can bypass that by looking down and pressing the "X" button. - exit Daydream Home to get back to 2D mode. - enable the following flags in a ToT Chromium build: "Chrome Duet" mode: chrome://flags#enable-chrome-duet "Contextual Suggestions Button": chrome://flags#contextual-suggestions-button - Open any web page in Chromium, for example wikipedia.org. Does not need to be a WebVR/WebXR page. - Place the phone in the Daydream Home viewer. NFC should trigger Daydream View mode and show the Chrome browser page in VR Browsing mode as a floating window. - Alternatively to the previous step, if NFC doesn't work, launch Daydream Home, and launch Chromium from the "Library" page. - Remove the phone from the Daydream View, and swipe the right edge of the screen to show the Back button. Press the Back button. - Chrome should return to 2D mode, with the unexpected white bar at the bottom covering the bottom navigation buttons. - Optionally, swipe up the white bar to check for a crash. For completeness, here's my args.gn: ffmpeg_branding = "Chrome" is_component_build = false is_debug = false is_official_build = true proprietary_codecs = true symbol_level = 1 target_cpu = "arm" target_os = "android" is_chrome_branded = true use_goma = true enable_resource_whitelist_generation = false Build target is "chrome_public_apk".
,
Oct 5
FWIW, I've been testing in normal Daydream View mode including the VR entry screen. If I set the "Skip VR entry screens" developer option in Daydream, it doesn't reproduce as consistently. While that option may speed up testing, I think it may produce false negatives.
,
Oct 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d41e88bdbb91ec59f6bc3b5dd589b76d85d9adb2 commit d41e88bdbb91ec59f6bc3b5dd589b76d85d9adb2 Author: Matthew Jones <mdjones@chromium.org> Date: Fri Oct 05 23:39:54 2018 Prevent VR from peeking bottom sheet This patch removes some old Chrome Home code that caused the bottom sheet to peek when exiting VR. Instead, the BottomSheetController now listens to VR events and suppresses the sheet if necessary. Bug: 840481 Change-Id: Iad8e20cd9876c2487150eac69693bac60266dee5 Reviewed-on: https://chromium-review.googlesource.com/c/1265834 Commit-Queue: Matthew Jones <mdjones@chromium.org> Reviewed-by: Theresa <twellington@chromium.org> Cr-Commit-Position: refs/heads/master@{#597368} [modify] https://crrev.com/d41e88bdbb91ec59f6bc3b5dd589b76d85d9adb2/chrome/android/java/src/org/chromium/chrome/browser/vr/VrShell.java [modify] https://crrev.com/d41e88bdbb91ec59f6bc3b5dd589b76d85d9adb2/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java [modify] https://crrev.com/d41e88bdbb91ec59f6bc3b5dd589b76d85d9adb2/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheetController.java
,
Oct 8
|
|||||||||||||
►
Sign in to add a comment |
|||||||||||||
Comment 1 by mdjones@chromium.org
, May 7 2018