Automated VR keyboard update prompt tests

Automates the two manual tests for ensuring that attempting to use
keyboard input while in the VR browser without the keyboard APK
installed triggers a DOFF prompt to install or updated the APK.

As a side effect, also adds the ability to wait for an element
in the native UI to change visibility.

Bug: 887588
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:linux_vr;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Ie4e08317c82fc2f4cc5379a5d18a82994f34a804
Reviewed-on: https://chromium-review.googlesource.com/c/1246279
Commit-Queue: Brian Sheedy <[email protected]>
Reviewed-by: Aldo Culquicondor <[email protected]>
Reviewed-by: Michael Thiessen <[email protected]>
Cr-Commit-Position: refs/heads/master@{#595916}
diff --git a/chrome/browser/vr/ui_interface.h b/chrome/browser/vr/ui_interface.h
index a5d8551..e30e57f5 100644
--- a/chrome/browser/vr/ui_interface.h
+++ b/chrome/browser/vr/ui_interface.h
@@ -79,6 +79,8 @@
   virtual gfx::Point3F GetTargetPointForTesting(
       UserFriendlyElementName element_name,
       const gfx::PointF& position) = 0;
+  virtual bool GetElementVisibilityForTesting(
+      UserFriendlyElementName element_name) = 0;
   virtual bool IsContentVisibleAndOpaque() = 0;
   virtual void SetContentUsesQuadLayer(bool uses_quad_buffers) = 0;
   virtual gfx::Transform GetContentWorldSpaceTransform() = 0;