New issue
Advanced search Search tips

Issue 727396 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-VR
Proj-XR
Proj-XR-VR



Sign in to add a comment

Separate VrShell UI code into a separate library to facilitate unit test development

Project Member Reported by cjgrant@chromium.org, May 29 2017

Issue description

Platform-independent VR UI code should be unit-testable without requiring Android-related pieces.  This bug tracks the separation of UI code from the rest of the VR codebase.
 
Project Member

Comment 1 by bugdroid1@chromium.org, May 30 2017

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

commit 18addc1ee2e63344ce882005e48c2e509a7402b5
Author: cjgrant <cjgrant@chromium.org>
Date: Tue May 30 13:44:28 2017

VR: Split off UI code into a library to ease future unit testing.

This new library contains most "utility" and UI code, which is platform
independent and easily testable.  The original library contains core,
Android, threading, etc.  This is a step towards being able to build a
small unit test binary, and run it on Linux.

To allow the split, add a GL renderer interface to hide the GL thread
from UI elements.

BUG= 727396 

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

[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/BUILD.gn
[add] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_element_renderer.h
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/screen_dimmer.cc
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/screen_dimmer.h
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/textured_element.cc
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/textured_element.h
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/ui_element.cc
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_elements/ui_element.h
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/ui_scene_manager.cc
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/vr_shell_renderer.cc
[modify] https://crrev.com/18addc1ee2e63344ce882005e48c2e509a7402b5/chrome/browser/android/vr_shell/vr_shell_renderer.h

Project Member

Comment 2 by bugdroid1@chromium.org, Jun 6 2017

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

commit a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4
Author: Christopher Grant <cjgrant@google.com>
Date: Tue Jun 06 16:05:11 2017

VR: Further split common code from Android-specific code.

Separate the UI to browser interface, to drop all Android awareness.
Also, fix a few instances of code that doesn't compile on linux.

The only thing needed now to compile tests on linux is a reference from
src/BUILD.gn, and exposing a few libraries and string resources exposed
to linux.

BUG= 727396 

Change-Id: I7c5a840b0820617a674b9668ebbb538e0ea62cfc
Reviewed-on: https://chromium-review.googlesource.com/521325
Commit-Queue: Christopher Grant <cjgrant@chromium.org>
Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
Reviewed-by: Yash Malik <ymalik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#477304}
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/BUILD.gn
[rename] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/gl_browser_interface.h
[add] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_browser_interface.h
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_elements/ui_element_unittest.cc
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_scene_manager.cc
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_scene_manager.h
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_scene_manager_unittest.cc
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/ui_scene_unittest.cc
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/vr_gl_thread.h
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/vr_shell_gl.cc
[modify] https://crrev.com/a6215bc06ce7fc233fe1cedab27988d6cbd5b9c4/chrome/browser/android/vr_shell/vr_shell_gl.h

Labels: Merge-Request-60 OS-Android
Project Member

Comment 4 by sheriffbot@chromium.org, Jun 6 2017

Labels: -Merge-Request-60 Hotlist-Merge-Approved Merge-Approved-60
Your change meets the bar and is auto-approved for M60. Please go ahead and merge the CL to branch 3112 manually. Please contact milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 5 by bugdroid1@chromium.org, Jun 6 2017

Labels: -merge-approved-60 merge-merged-3112
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/193ebc46e5070c5bc855234f8a02d90c8903b69b

commit 193ebc46e5070c5bc855234f8a02d90c8903b69b
Author: Christopher Grant <cjgrant@google.com>
Date: Tue Jun 06 18:10:40 2017

VR: Split off UI code into a library to ease future unit testing.

This new library contains most "utility" and UI code, which is platform
independent and easily testable.  The original library contains core,
Android, threading, etc.  This is a step towards being able to build a
small unit test binary, and run it on Linux.

To allow the split, add a GL renderer interface to hide the GL thread
from UI elements.

BUG= 727396 

Review-Url: https://codereview.chromium.org/2903363002
Cr-Original-Commit-Position: refs/heads/master@{#475516}
Review-Url: https://codereview.chromium.org/2923043003 .
Cr-Commit-Position: refs/branch-heads/3112@{#191}
Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897}

[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/BUILD.gn
[add] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_element_renderer.h
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/screen_dimmer.cc
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/screen_dimmer.h
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/textured_element.cc
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/textured_element.h
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/ui_element.cc
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_elements/ui_element.h
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/ui_scene_manager.cc
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/vr_shell_renderer.cc
[modify] https://crrev.com/193ebc46e5070c5bc855234f8a02d90c8903b69b/chrome/browser/android/vr_shell/vr_shell_renderer.h

Project Member

Comment 6 by bugdroid1@chromium.org, Jun 6 2017

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

commit b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd
Author: Christopher Grant <cjgrant@google.com>
Date: Tue Jun 06 18:18:06 2017

VR: Further split common code from Android-specific code.

Separate the UI to browser interface, to drop all Android awareness.
Also, fix a few instances of code that doesn't compile on linux.

The only thing needed now to compile tests on linux is a reference from
src/BUILD.gn, and exposing a few libraries and string resources exposed
to linux.

BUG= 727396 

Change-Id: I7c5a840b0820617a674b9668ebbb538e0ea62cfc
Reviewed-on: https://chromium-review.googlesource.com/521325
Commit-Queue: Christopher Grant <cjgrant@chromium.org>
Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
Reviewed-by: Yash Malik <ymalik@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#477304}
Review-Url: https://codereview.chromium.org/2929483003 .
Cr-Commit-Position: refs/branch-heads/3112@{#193}
Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897}

[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/BUILD.gn
[rename] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/gl_browser_interface.h
[add] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_browser_interface.h
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_elements/ui_element_unittest.cc
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_scene_manager.cc
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_scene_manager.h
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_scene_manager_unittest.cc
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/ui_scene_unittest.cc
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/vr_gl_thread.h
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/vr_shell_gl.cc
[modify] https://crrev.com/b7d24a4f80036ac2bfdaf43b6394e7f2461f5bdd/chrome/browser/android/vr_shell/vr_shell_gl.h

Status: Fixed (was: Assigned)

Sign in to add a comment