Repository navigation
Conversation
…ndment 6) With CONTROLLERS=1 the provider now fills the runtime's get_engaged_ns slot: the last time each hand pinched. On a runtime that has the slot, a controller role goes to the hands when a hand pinches and back to the keyboard and mouse when they are used, instead of the hands holding the roles whenever a camera is present. Each call is demand, so the camera stays open while an app resolves roles and can see the pinch that takes a role back. Hand joints alone (CONTROLLERS=0) never engage. include/xrt regenerated from the runtime's feat/input-engagement (runtime PR #2460, 43264c33f); the headers job is pinned there until that PR merges and the pin moves to main. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Live, a hand that entered the camera's view resting (thumb near the index, under PINCH_ON_MM) took the left controller role from the keyboard with nobody pinching. Engagement now needs the pinch to start on a hand already tracked open, and lasts while that pinch is held; losing the hand resets it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #3. Provider side of runtime PR DisplayXR/displayxr-runtime#2460 (the controller role follows the engaged device).
CONTROLLERS=1, fills the new optionalget_engaged_ns(inst, hand)slot with the last time that hand pinched (ot_monotonic_ns, the runtime'sos_monotonic_get_nsclock on every platform).CONTROLLERS=0(the default) never engages: hand joints only, no controller pair.struct_sizeand is never called: behaviour unchanged.include/xrtregenerated from runtime43264c33f(#2460's head); ABI check passes; theheadersjob is pinned there. Repin to main once #2460 merges (do not merge this before).Local: 29/29 ctest. Live test (pinch takes the role, mouse takes it back) pending a runtime build of #2460.
🤖 Generated with Claude Code