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

Issue 2471433002: Implement WebVR presentation pausing for VR Shell Menu Mode (Closed)

Created:
4 years, 1 month ago by mthiesse
Modified:
4 years, 1 month ago
Reviewers:
Ted C, bajones, bshe, dcheng
CC:
chromium-reviews, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org, abarth-chromium, haraken, Aaron Boodman, blink-reviews, darin (slow to review), cjgrant, asimjour1, shaobo.yan
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Implement WebVR presentation pausing for VR Shell Menu Mode This CL also passes VRDeviceProvider around as a WeakPtr, removes unsafe thread hopping, and fixes some races in VR Shell init/teardown. BUG=644565 Committed: https://crrev.com/6b438bcc55da335795a7aa4b53ae590cd8c71eee Cr-Commit-Position: refs/heads/master@{#431939}

Patch Set 1 #

Total comments: 12

Patch Set 2 : Addressed comments + Fixed rendering issues #

Total comments: 2

Patch Set 3 : nit #

Patch Set 4 : Implement Blur/Focus in MockVRServiceClient #

Total comments: 8

Patch Set 5 : Address comments #

Total comments: 6

Patch Set 6 : rebase onto shaobo's patch #

Patch Set 7 : Fix some more instances of not using scoped_refptr #

Patch Set 8 : Add comments to VRDisplay #

Total comments: 4

Patch Set 9 : Address Comments #

Total comments: 14

Patch Set 10 : Address comments #

Patch Set 11 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+260 lines, -131 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellImpl.java View 1 2 3 4 5 6 7 8 9 10 3 chunks +4 lines, -0 lines 0 comments Download
M chrome/browser/android/vr_shell/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/android/vr_shell/ui_interface.h View 1 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/browser/android/vr_shell/ui_interface.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/android/vr_shell/vr_shell.h View 1 2 3 4 5 6 7 8 4 chunks +6 lines, -1 line 0 comments Download
M chrome/browser/android/vr_shell/vr_shell.cc View 1 2 3 4 5 6 7 8 9 10 13 chunks +66 lines, -22 lines 0 comments Download
M chrome/browser/android/vr_shell/vr_shell_delegate.h View 1 2 3 4 5 6 7 8 2 chunks +12 lines, -8 lines 0 comments Download
M chrome/browser/android/vr_shell/vr_shell_delegate.cc View 1 2 3 4 5 6 7 8 9 9 chunks +16 lines, -15 lines 0 comments Download
M device/vr/android/gvr/gvr_delegate.h View 1 2 3 4 5 6 7 8 2 chunks +4 lines, -2 lines 0 comments Download
M device/vr/android/gvr/gvr_device.h View 1 2 3 4 5 6 7 8 9 3 chunks +6 lines, -4 lines 0 comments Download
M device/vr/android/gvr/gvr_device.cc View 1 2 3 4 5 6 7 8 9 4 chunks +8 lines, -3 lines 0 comments Download
M device/vr/android/gvr/gvr_device_provider.h View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -7 lines 0 comments Download
M device/vr/android/gvr/gvr_device_provider.cc View 1 2 3 4 5 6 7 8 9 3 chunks +18 lines, -19 lines 0 comments Download
M device/vr/android/gvr/gvr_gamepad_data_fetcher.h View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -2 lines 0 comments Download
M device/vr/android/gvr/gvr_gamepad_data_fetcher.cc View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -4 lines 0 comments Download
M device/vr/test/fake_vr_device.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -1 line 0 comments Download
M device/vr/test/fake_vr_device.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M device/vr/vr_device.h View 1 2 3 4 5 6 7 8 4 chunks +3 lines, -4 lines 0 comments Download
M device/vr/vr_device.cc View 1 2 3 4 5 6 7 8 2 chunks +15 lines, -12 lines 0 comments Download
M device/vr/vr_device_manager.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M device/vr/vr_device_manager.cc View 1 2 3 4 5 6 7 8 9 3 chunks +4 lines, -6 lines 0 comments Download
M device/vr/vr_device_manager_unittest.cc View 1 2 3 4 5 6 7 8 3 chunks +10 lines, -13 lines 0 comments Download
M device/vr/vr_service.mojom View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M device/vr/vr_service_impl_unittest.cc View 1 2 3 4 5 6 7 8 3 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/events/EventTypeNames.in View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/vr/NavigatorVR.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/vr/NavigatorVR.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +10 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/vr/VRDisplay.h View 1 2 3 4 5 3 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/vr/VRDisplay.cpp View 1 2 3 4 5 6 7 8 9 10 4 chunks +37 lines, -0 lines 0 comments Download

Messages

Total messages: 37 (11 generated)
mthiesse
PTAL
4 years, 1 month ago (2016-11-01 15:52:47 UTC) #2
bajones
https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (right): https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc#newcode288 chrome/browser/android/vr_shell/vr_shell.cc:288: // TODO(mthiesse): Also pause tracking for all webvr pages. ...
4 years, 1 month ago (2016-11-01 18:11:32 UTC) #3
bshe
On 2016/11/01 18:11:32, bajones wrote: > https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc > File chrome/browser/android/vr_shell/vr_shell.cc (right): > > https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc#newcode288 > ...
4 years, 1 month ago (2016-11-01 19:29:31 UTC) #4
mthiesse
I also went ahead and fixed a bunch of rendering bugs in vr_shell.cc around mode ...
4 years, 1 month ago (2016-11-02 14:39:02 UTC) #5
mthiesse
dcheng@chromium.org: Please review .mojom changes and third_party/WebKit/Source/core/ changes.
4 years, 1 month ago (2016-11-02 14:53:09 UTC) #7
bshe
https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (right): https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc#newcode288 chrome/browser/android/vr_shell/vr_shell.cc:288: // TODO(mthiesse): Also pause tracking for all webvr pages. ...
4 years, 1 month ago (2016-11-02 14:58:40 UTC) #8
mthiesse
https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (right): https://codereview.chromium.org/2471433002/diff/1/chrome/browser/android/vr_shell/vr_shell.cc#newcode288 chrome/browser/android/vr_shell/vr_shell.cc:288: // TODO(mthiesse): Also pause tracking for all webvr pages. ...
4 years, 1 month ago (2016-11-02 15:03:32 UTC) #9
bajones
LGTM with one non-blocking question. https://codereview.chromium.org/2471433002/diff/20001/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (right): https://codereview.chromium.org/2471433002/diff/20001/chrome/browser/android/vr_shell/vr_shell.cc#newcode532 chrome/browser/android/vr_shell/vr_shell.cc:532: glClearColor(0.1f, 0.1f, 0.1f, 0.0f); ...
4 years, 1 month ago (2016-11-02 17:55:06 UTC) #10
mthiesse
https://codereview.chromium.org/2471433002/diff/20001/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (right): https://codereview.chromium.org/2471433002/diff/20001/chrome/browser/android/vr_shell/vr_shell.cc#newcode532 chrome/browser/android/vr_shell/vr_shell.cc:532: glClearColor(0.1f, 0.1f, 0.1f, 0.0f); On 2016/11/02 17:55:06, bajones wrote: ...
4 years, 1 month ago (2016-11-02 18:02:53 UTC) #11
dcheng
https://codereview.chromium.org/2471433002/diff/80001/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc (left): https://codereview.chromium.org/2471433002/diff/80001/chrome/browser/android/vr_shell/vr_shell.cc#oldcode489 chrome/browser/android/vr_shell/vr_shell.cc:489: if (!webvr_mode_) { Should we get rid of |webvr_mode_|? ...
4 years, 1 month ago (2016-11-04 05:24:46 UTC) #13
mthiesse
(No updated patchset yet, I'm at a conference, just responding to comments) https://codereview.chromium.org/2471433002/diff/80001/chrome/browser/android/vr_shell/vr_shell.cc File chrome/browser/android/vr_shell/vr_shell.cc ...
4 years, 1 month ago (2016-11-04 17:20:36 UTC) #14
mthiesse
dcheng, bajones PTAL I changed how we pause the render loop, and made VRDeviceProvider refcounted ...
4 years, 1 month ago (2016-11-08 21:04:09 UTC) #15
dcheng
Also, I don't think I follow why this has to be refcounted now; if the ...
4 years, 1 month ago (2016-11-08 23:05:45 UTC) #16
mthiesse
On 2016/11/08 23:05:45, dcheng wrote: > Also, I don't think I follow why this has ...
4 years, 1 month ago (2016-11-08 23:12:25 UTC) #17
dcheng
On 2016/11/08 23:12:25, mthiesse wrote: > On 2016/11/08 23:05:45, dcheng wrote: > > Also, I ...
4 years, 1 month ago (2016-11-08 23:27:56 UTC) #18
mthiesse
In trying to address your comments, I've realized I'm inadvertently embarking upon many of the ...
4 years, 1 month ago (2016-11-10 00:36:14 UTC) #19
mthiesse
PTAL bajones, dcheng. bajones and I discussed, and agreed that RefCountedThreadSafe was the right choice ...
4 years, 1 month ago (2016-11-10 22:14:10 UTC) #21
dcheng
On 2016/11/10 22:14:10, mthiesse wrote: > PTAL bajones, dcheng. > > bajones and I discussed, ...
4 years, 1 month ago (2016-11-11 00:48:21 UTC) #22
mthiesse
Ah, I finally understand the approach. I've refactored to use weak pointers. There's a lot ...
4 years, 1 month ago (2016-11-11 20:19:21 UTC) #24
mthiesse
tedchoc@chromium.org: Please review changes in VrShellImpl.java
4 years, 1 month ago (2016-11-11 20:27:47 UTC) #27
Ted C
On 2016/11/11 20:27:47, mthiesse wrote: > mailto:tedchoc@chromium.org: Please review changes in VrShellImpl.java VrShellImpl.java - lgtm
4 years, 1 month ago (2016-11-11 22:00:28 UTC) #28
dcheng
mojo LGTM Just some optional minor cleanups (and please pass WeakPtr by const ref... in ...
4 years, 1 month ago (2016-11-12 02:03:31 UTC) #29
mthiesse
https://codereview.chromium.org/2471433002/diff/200001/chrome/browser/android/vr_shell/vr_shell_delegate.cc File chrome/browser/android/vr_shell/vr_shell_delegate.cc (right): https://codereview.chromium.org/2471433002/diff/200001/chrome/browser/android/vr_shell/vr_shell_delegate.cc#newcode105 chrome/browser/android/vr_shell/vr_shell_delegate.cc:105: return reinterpret_cast<GvrNonPresentingDelegate*>( On 2016/11/12 02:03:31, dcheng wrote: > Nit: ...
4 years, 1 month ago (2016-11-14 16:41:39 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2471433002/240001
4 years, 1 month ago (2016-11-14 20:28:56 UTC) #33
commit-bot: I haz the power
Committed patchset #11 (id:240001)
4 years, 1 month ago (2016-11-14 22:56:30 UTC) #35
commit-bot: I haz the power
4 years, 1 month ago (2016-11-14 22:59:17 UTC) #37
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/6b438bcc55da335795a7aa4b53ae590cd8c71eee
Cr-Commit-Position: refs/heads/master@{#431939}

Powered by Google App Engine
This is Rietveld 408576698