| Index: third_party/WebKit/Source/modules/vr/VRDisplay.cpp
|
| diff --git a/third_party/WebKit/Source/modules/vr/VRDisplay.cpp b/third_party/WebKit/Source/modules/vr/VRDisplay.cpp
|
| index 6f13f70e67a81d7f10850cbfc01f761ef2435a06..aefe6ba06a1ae6aa1a7dbdc53f6007cef3f2d883 100644
|
| --- a/third_party/WebKit/Source/modules/vr/VRDisplay.cpp
|
| +++ b/third_party/WebKit/Source/modules/vr/VRDisplay.cpp
|
| @@ -681,8 +681,6 @@ void VRDisplay::stopPresenting() {
|
| }
|
|
|
| void VRDisplay::OnActivate(device::mojom::blink::VRDisplayEventReason reason) {
|
| - if (!m_navigatorVR->isFocused() || m_displayBlurred)
|
| - return;
|
| AutoReset<bool> activating(&m_inDisplayActivate, true);
|
| m_navigatorVR->dispatchVREvent(VRDisplayEvent::create(
|
| EventTypeNames::vrdisplayactivate, true, false, this, reason));
|
| @@ -713,6 +711,7 @@ void VRDisplay::OnVSync(device::mojom::blink::VRPosePtr pose,
|
| mojo::common::mojom::blink::TimeDeltaPtr time,
|
| int16_t frameId,
|
| device::mojom::blink::VRVSyncProvider::Status error) {
|
| + m_VSyncConnectionFailed = false;
|
| switch (error) {
|
| case device::mojom::blink::VRVSyncProvider::Status::SUCCESS:
|
| break;
|
| @@ -760,7 +759,10 @@ void VRDisplay::ConnectVSyncProvider() {
|
|
|
| void VRDisplay::OnVSyncConnectionError() {
|
| m_vrVSyncProvider.reset();
|
| + if (m_VSyncConnectionFailed)
|
| + return;
|
| ConnectVSyncProvider();
|
| + m_VSyncConnectionFailed = true;
|
| }
|
|
|
| ScriptedAnimationController& VRDisplay::ensureScriptedAnimationController(
|
|
|