@@ -47,8 +47,8 @@ namespace gfx {
47
47
// and mapped files if we have both release and nightlies
48
48
// running at the same time? Or...what if we have multiple
49
49
// release builds running on same machine? (Bug 1563232)
50
- #define SHMEM_VERSION " 0.0.6 "
51
- static const int32_t kVRExternalVersion = 13 ;
50
+ #define SHMEM_VERSION " 0.0.7 "
51
+ static const int32_t kVRExternalVersion = 14 ;
52
52
53
53
// We assign VR presentations to groups with a bitmask.
54
54
// Currently, we will only display either content or chrome.
@@ -543,6 +543,41 @@ struct VRWindowState {
543
543
char signalName[32 ];
544
544
};
545
545
546
+ enum class VRTelemetryId : uint8_t {
547
+ NONE = 0 ,
548
+ INSTALLED_FROM = 1 ,
549
+ ENTRY_METHOD = 2 ,
550
+ FIRST_RUN = 3 ,
551
+ TOTAL = 4 ,
552
+ };
553
+
554
+ enum class VRTelemetryInstallFrom : uint8_t {
555
+ User = 0 ,
556
+ FxR = 1 ,
557
+ HTC = 2 ,
558
+ Valve = 3 ,
559
+ TOTAL = 4 ,
560
+ };
561
+
562
+ enum class VRTelemetryEntryMethod : uint8_t {
563
+ SystemBtn = 0 ,
564
+ Library = 1 ,
565
+ Gaze = 2 ,
566
+ TOTAL = 3 ,
567
+ };
568
+
569
+ struct VRTelemetryState {
570
+ uint32_t uid;
571
+
572
+ bool installedFrom : 1 ;
573
+ bool entryMethod : 1 ;
574
+ bool firstRun : 1 ;
575
+
576
+ uint8_t installedFromValue : 3 ;
577
+ uint8_t entryMethodValue : 3 ;
578
+ bool firstRunValue : 1 ;
579
+ };
580
+
546
581
struct VRExternalShmem {
547
582
int32_t version;
548
583
int32_t size;
@@ -570,6 +605,7 @@ struct VRExternalShmem {
570
605
#endif // !defined(__ANDROID__)
571
606
#if defined(XP_WIN)
572
607
VRWindowState windowState;
608
+ VRTelemetryState telemetryState;
573
609
#endif
574
610
#ifdef MOZILLA_INTERNAL_API
575
611
void Clear () volatile {
0 commit comments