Manifest for Linux; connect as Background app where Utility is refused
- manifest.vrmanifest: binary_path_linux and binary_path_linux_arm. The Steam Frame's SteamVR reads only binary_path_linux_arm. - handleManifests(): connect as Utility app first (works without a running SteamVR, e.g. from the Windows installer); if SteamVR refuses Utility apps, as on the Steam Frame, connect as Background app. Fail right away on other errors instead of going through initializeOpenVR()'s retry loop. - main(): check --graphics-api before connecting to OpenVR, so a wrong value fails right away. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
4826686a4d
commit
b22c35ae29
@@ -102,3 +102,23 @@
|
||||
- `MyTextField` opens the SteamVR keyboard on `activeFocus`. The template had to send the
|
||||
offscreen window an explicit `FocusIn`, otherwise `activeFocusItem` stayed null. The `qt6`
|
||||
branch doesn't send it. If text fields don't respond on the Frame, that is the cause (R4).
|
||||
|
||||
### Step 4: manifest and installation (2026-10-07)
|
||||
|
||||
**Changes:**
|
||||
- **`manifest.vrmanifest`:** `binary_path_linux` and `binary_path_linux_arm` →
|
||||
`AdvancedSettings_app`.
|
||||
- **`manifest::handleManifests`:**
|
||||
- `VR_Init(Utility)`; on `VRInitError_Init_NotAvailableToUtilityApps`,
|
||||
`VR_Init(Background)`.
|
||||
- Other errors: message and exit code `OPENVR_INIT_ERROR`, instead of
|
||||
`initializeOpenVR`'s retry loop.
|
||||
- **`main.cpp`:** `--graphics-api` is checked before connecting to OpenVR. A wrong value
|
||||
used to fail only after `initializeOpenVR`'s retry loop.
|
||||
|
||||
**Results (x86_64, without SteamVR):**
|
||||
- `--force-install-manifest` exits right away with `OPENVR_INIT_ERROR` (−2).
|
||||
- `--graphics-api foo` exits right away with `GENERAL_FAILURE` (−1).
|
||||
- The build tree contains the binary, `libopenvr_api.so`, both manifests,
|
||||
`default_action_manifests/` and `res/`.
|
||||
- Not tested yet: `Background` on the Frame (step 5).
|
||||
|
||||
Reference in New Issue
Block a user