@@ -141,24 +141,28 @@ public void ProcessInput(ActionMapInput input, ConsumeControlDelegate consumeCon
141141 eventData . rayOrigin = rayOrigin ;
142142 eventData . pointerLength = this . GetPointerLength ( eventData . rayOrigin ) ;
143143
144+ var sourceAMI = source . actionMapInput ;
145+ var select = sourceAMI . select ;
146+
144147 if ( source . isValid != null && ! source . isValid ( source ) )
145148 {
146149 var currentRaycast = eventData . pointerCurrentRaycast ;
147150 currentRaycast . gameObject = null ;
148151 eventData . pointerCurrentRaycast = currentRaycast ;
149152 source . hoveredObject = null ;
150153 HandlePointerExitAndEnter ( eventData , null , true ) ; // Send only exit events
154+
155+ if ( select . wasJustReleased )
156+ OnSelectReleased ( source ) ;
151157 continue ;
152158 }
153159
154160 HandlePointerExitAndEnter ( eventData , hoveredObject ) ; // Send enter and exit events
155161
156162 var hasObject = source . hasObject ;
157163 var hasScrollHandler = false ;
158- var sourceAMI = source . actionMapInput ;
159- sourceAMI . active = hasObject && ShouldActivateInput ( eventData , source . currentObject , out hasScrollHandler ) ;
160164
161- var select = sourceAMI . select ;
165+ sourceAMI . active = hasObject && ShouldActivateInput ( eventData , source . currentObject , out hasScrollHandler ) ;
162166
163167 // Proceed only if pointer is interacting with something
164168 if ( ! sourceAMI . active )
0 commit comments