From 8077296a8ec98e0d9b7948ab571f85657a7747fc Mon Sep 17 00:00:00 2001 From: Hyblocker Date: Thu, 24 Sep 2026 22:30:03 +0200 Subject: [PATCH] chore: handle some edge cases --- src/overlay/user_interface.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/overlay/user_interface.cpp b/src/overlay/user_interface.cpp index 2ba61ea..53afb78 100644 --- a/src/overlay/user_interface.cpp +++ b/src/overlay/user_interface.cpp @@ -70,6 +70,8 @@ inline void buildDeviceSelection(spacecal::TrackingSystemCalibration& calibratio continue; if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) continue; + if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_DisplayRedirect) + continue; if (selected == vrDevice.dwDeviceIndex) { matched = true; @@ -95,6 +97,8 @@ inline void buildDeviceSelection(spacecal::TrackingSystemCalibration& calibratio continue; if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) continue; + if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_DisplayRedirect) + continue; if (vrDevice.eControllerRole == vr::ETrackedControllerRole::TrackedControllerRole_LeftHand) { selected = vrDevice.dwDeviceIndex; @@ -113,6 +117,8 @@ inline void buildDeviceSelection(spacecal::TrackingSystemCalibration& calibratio continue; if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) continue; + if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_DisplayRedirect) + continue; selected = vrDevice.dwDeviceIndex; break; @@ -131,6 +137,8 @@ inline void buildDeviceSelection(spacecal::TrackingSystemCalibration& calibratio continue; if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) continue; + if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_DisplayRedirect) + continue; if (device.deviceModel != vrDevice.szModel) continue; @@ -165,6 +173,8 @@ inline void buildDeviceSelection(spacecal::TrackingSystemCalibration& calibratio continue; if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_TrackingReference) continue; + if (vrDevice.eDeviceClass == vr::ETrackedDeviceClass::TrackedDeviceClass_DisplayRedirect) + continue; auto label = fmt::format("{} | {}", vrDevice.szModel, vrDevice.szSerial); std::string uniqueId = fmt::format("{}_pass1_{}", label, iterator);