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

Side by Side Diff: third_party/WebKit/Source/modules/vr/VRDisplay.h

Issue 2329893002: Isolate a presenting VR device from pages other than the one presenting. (Closed)
Patch Set: Unit tests Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef VRDisplay_h 5 #ifndef VRDisplay_h
6 #define VRDisplay_h 6 #define VRDisplay_h
7 7
8 #include "bindings/core/v8/ScriptWrappable.h" 8 #include "bindings/core/v8/ScriptWrappable.h"
9 #include "core/dom/Document.h" 9 #include "core/dom/Document.h"
10 #include "core/dom/FrameRequestCallback.h" 10 #include "core/dom/FrameRequestCallback.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 void submitFrame(); 77 void submitFrame();
78 78
79 DECLARE_VIRTUAL_TRACE(); 79 DECLARE_VIRTUAL_TRACE();
80 80
81 protected: 81 protected:
82 friend class VRController; 82 friend class VRController;
83 83
84 VRDisplay(NavigatorVR*); 84 VRDisplay(NavigatorVR*);
85 85
86 void update(const device::blink::VRDisplayPtr&); 86 void update(const device::blink::VRDisplayPtr&);
87
87 void updatePose(); 88 void updatePose();
88 89
90 void beginPresent(ScriptPromiseResolver*);
91 void forceExitPresent();
92
93 void updateLayerBounds();
94
89 VRController* controller(); 95 VRController* controller();
90 96
91 private: 97 private:
92 void onFullscreenCheck(TimerBase*); 98 void onFullscreenCheck(TimerBase*);
93 99
94 Member<NavigatorVR> m_navigatorVR; 100 Member<NavigatorVR> m_navigatorVR;
95 unsigned m_displayId; 101 unsigned m_displayId;
96 String m_displayName; 102 String m_displayName;
97 bool m_isConnected; 103 bool m_isConnected;
98 bool m_isPresenting; 104 bool m_isPresenting;
99 bool m_canUpdateFramePose; 105 bool m_canUpdateFramePose;
100 unsigned m_compositorHandle; 106 unsigned m_compositorHandle;
101 Member<VRDisplayCapabilities> m_capabilities; 107 Member<VRDisplayCapabilities> m_capabilities;
102 Member<VRStageParameters> m_stageParameters; 108 Member<VRStageParameters> m_stageParameters;
103 Member<VREyeParameters> m_eyeParametersLeft; 109 Member<VREyeParameters> m_eyeParametersLeft;
104 Member<VREyeParameters> m_eyeParametersRight; 110 Member<VREyeParameters> m_eyeParametersRight;
105 device::blink::VRPosePtr m_framePose; 111 device::blink::VRPosePtr m_framePose;
106 VRLayer m_layer; 112 VRLayer m_layer;
107 double m_depthNear; 113 double m_depthNear;
108 double m_depthFar; 114 double m_depthFar;
109 115
110 Timer<VRDisplay> m_fullscreenCheckTimer; 116 Timer<VRDisplay> m_fullscreenCheckTimer;
111 }; 117 };
112 118
113 using VRDisplayVector = HeapVector<Member<VRDisplay>>; 119 using VRDisplayVector = HeapVector<Member<VRDisplay>>;
114 120
115 } // namespace blink 121 } // namespace blink
116 122
117 #endif // VRDisplay_h 123 #endif // VRDisplay_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/modules/vr/VRController.cpp ('k') | third_party/WebKit/Source/modules/vr/VRDisplay.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698