This PR adds some major changes to the Phone UI in the VisionGlass. It's based in two important refactorings:
Decouple phone UI initialization from glasses initialization. The latter is an async process that might fail. We should not depend on that to initialize the UI widgets.
Introduce a new PlatformActivityPlugin interface that will be called by VRBrowserActivity to perform platform specific tasks. It's needed because the different PlatformActivitys are superclasses of VRBrowserActivity and thus don't have access to data and interface implementations of the latter.
Once these two are in place the following changes were implemented in the phone UI:
Added a voice search button. Only active whenever the on screen keyboard is shown, as it's the only time were it's really needed
Added media controls playback. Only visible when playing media. It contains a play/pause button, a mute/volume button, and a fast forward and fast backward buttons.
This PR adds some major changes to the Phone UI in the VisionGlass. It's based in two important refactorings:
PlatformActivityPlugin
interface that will be called byVRBrowserActivity
to perform platform specific tasks. It's needed because the differentPlatformActivity
s are superclasses ofVRBrowserActivity
and thus don't have access to data and interface implementations of the latter.Once these two are in place the following changes were implemented in the phone UI: