Search Issue Tracker
Fixed
Fixed in 2.5.3
Votes
2
Found in [Package]
2.5.2
Issue ID
XRIT-115
Regression
No
Poke interactor blocks other interactors when a UI button gets disabled while being poked
My xr rig uses poke, direct, ray and teleport interactors in that priority order. When I'm poking a UI button and the UI gets disabled while being poked, all other interactors become unusable. I can't grab, raycst to or teleport until I poke another UI element.
To sum it up, it looks like the poke interaction is left unresolved when the UI gets disabled.
Disabling/renabling the poke interactor doesn't solve the issue.
XR Interaction Toolkit v 2.5.2
OpenXR plugin v 1.8.2
Unity version 2022.3.10
Reported by forum post
Bug - Poke interactor blocks other interactors when a UI button gets disabled while being poked - Unity Forum
Comments (2)
-
njwpsu
Mar 19, 2024 15:42
I was wrong - line 205 is not the problem.
The issue is the 'TrackedDeviceRayster.ValidatePokeInteractionData()' method does not check 's_PokeHoverRaycasters' for poke interactors that are hovering inactive graphic raycasters.
-
njwpsu
Mar 15, 2024 17:53
The issue still exists for UI that is disabled while being *hovered* by the poke interactor. TrackedDeviceRaycaster.cs - line 205 needs to be removed
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Out-of-bounds memory access with multiple CanvasRenderers under a Canvas when using Mesh API
- Inspector tries to access file after it was deleted when the file was locked in Inspector window
- Changing Transform values in Search window Inspector loses focus while dragging and stopping mouse without releasing dragging action
- Saving changes on the dirty VFX Graph during the Play mode throws "The referenced script (Unknown) on this Behaviour is missing!" warnings
- VFX Graph Debug Info overlaps the "Initialize" block debug info by default
Resolution Note (fix version 2.5.3):
Fixed XRPokeInteractor and TrackedGraphicRaycaster to ensure poke interactor data is cleared when the UI element with a poke interaction is disabled.