@@ -240,14 +240,14 @@ public override void Disable()
240240 /// <inheritdoc />
241241 public override void HandleEvent < T > ( BaseEventData eventData , ExecuteEvents . EventFunction < T > eventHandler )
242242 {
243- Debug . Assert ( eventData != null ) ;
244- Debug . Assert ( ! ( eventData is MixedRealityPointerEventData ) , "HandleEvent called with a pointer event. All events raised by pointer should call HandlePointerEvent" ) ;
245-
246243 if ( disabledRefCount > 0 )
247244 {
248245 return ;
249246 }
250247
248+ Debug . Assert ( eventData != null ) ;
249+ Debug . Assert ( ! ( eventData is MixedRealityPointerEventData ) , "HandleEvent called with a pointer event. All events raised by pointer should call HandlePointerEvent" ) ;
250+
251251 var baseInputEventData = ExecuteEvents . ValidateEventData < BaseInputEventData > ( eventData ) ;
252252 DispatchEventToGlobalListeners ( baseInputEventData , eventHandler ) ;
253253
@@ -298,7 +298,6 @@ private void HandlePointerEvent<T>(BaseEventData eventData, ExecuteEvents.EventF
298298 return ;
299299 }
300300
301-
302301 Debug . Assert ( pointerEventData . Pointer != null , "Trying to dispatch event on pointer but pointerEventData is null" ) ;
303302
304303 DispatchEventToObjectFocusedByPointer ( pointerEventData . Pointer , baseInputEventData , false , eventHandler ) ;
@@ -333,11 +332,11 @@ private void DispatchEventToFallbackHandlers<T>(BaseInputEventData baseInputEven
333332 }
334333 }
335334
336-
337335 /// <summary>
338336 /// Dispatch an input event to the object focused by the given IMixedRealityPointer.
339337 /// If a modal dialog is active, dispatch the pointer event to that modal dialog
340338 /// Returns true if the event was handled by a modal handler
339+ /// </summary>
341340 private bool DispatchEventToObjectFocusedByPointer < T > ( IMixedRealityPointer mixedRealityPointer , BaseInputEventData baseInputEventData ,
342341 bool modalEventHandled , ExecuteEvents . EventFunction < T > eventHandler ) where T : IEventSystemHandler
343342 {
@@ -841,7 +840,9 @@ public void RaisePointerDown(IMixedRealityPointer pointer, Handedness handedness
841840 public void RaisePointerDown ( IMixedRealityPointer pointer , MixedRealityInputAction inputAction , Handedness handedness = Handedness . None , IMixedRealityInputSource inputSource = null )
842841 {
843842 pointerEventData . Initialize ( pointer , inputAction , handedness , inputSource ) ;
843+
844844 HandlePointerEvent ( pointerEventData , OnPointerDownEventHandler ) ;
845+
845846 if ( pointer . Result ? . Details . Object != null )
846847 {
847848 pointer . IsFocusLocked = true ;
@@ -906,7 +907,9 @@ public void RaisePointerUp(IMixedRealityPointer pointer, Handedness handedness,
906907 public void RaisePointerUp ( IMixedRealityPointer pointer , MixedRealityInputAction inputAction , Handedness handedness = Handedness . None , IMixedRealityInputSource inputSource = null )
907908 {
908909 pointerEventData . Initialize ( pointer , inputAction , handedness , inputSource ) ;
910+
909911 HandlePointerEvent ( pointerEventData , OnPointerUpEventHandler ) ;
912+
910913 pointer . IsFocusLocked = false ;
911914 }
912915
0 commit comments