@@ -202,33 +202,30 @@ - (void)unbindFromView
202202 _view = nil ;
203203}
204204
205+ - (RNGestureHandlerEventExtraData *)extraDataForEvent : (NSEvent *)event
206+ {
207+ CGPoint windowLocation = [event locationInWindow ];
208+ CGPoint relativePos = [_view convertPoint: windowLocation fromView: nil ];
209+ CGPoint absolutePos = [_view.window.contentView convertPoint: windowLocation fromView: nil ];
210+
211+ return [RNGestureHandlerEventExtraData forPosition: relativePos
212+ withAbsolutePosition: absolutePos
213+ withNumberOfTouches: 1
214+ withPointerType: _pointerType];
215+ }
216+
205217- (void )mouseEntered : (NSEvent *)event
206218{
207- [self sendEventsInState: RNGestureHandlerStateBegan
208- forViewWithTag: _view.reactTag
209- withExtraData: [RNGestureHandlerEventExtraData forPointerInside: YES
210- withNumberOfTouches: 1
211- withPointerType: _pointerType]];
212- [self sendEventsInState: RNGestureHandlerStateActive
213- forViewWithTag: _view.reactTag
214- withExtraData: [RNGestureHandlerEventExtraData forPointerInside: YES
215- withNumberOfTouches: 1
216- withPointerType: _pointerType]];
217- }
218-
219- - (void )mouseExited : (NSEvent *)theEvent
220- {
221- [self sendEventsInState: RNGestureHandlerStateEnd
222- forViewWithTag: _view.reactTag
223- withExtraData: [RNGestureHandlerEventExtraData forPointerInside: NO
224- withNumberOfTouches: 1
225- withPointerType: _pointerType]];
226-
227- [self sendEventsInState: RNGestureHandlerStateUndetermined
228- forViewWithTag: _view.reactTag
229- withExtraData: [RNGestureHandlerEventExtraData forPointerInside: NO
230- withNumberOfTouches: 1
231- withPointerType: _pointerType]];
219+ RNGestureHandlerEventExtraData *extraData = [self extraDataForEvent: event];
220+ [self sendEventsInState: RNGestureHandlerStateBegan forViewWithTag: _view.reactTag withExtraData: extraData];
221+ [self sendEventsInState: RNGestureHandlerStateActive forViewWithTag: _view.reactTag withExtraData: extraData];
222+ }
223+
224+ - (void )mouseExited : (NSEvent *)event
225+ {
226+ RNGestureHandlerEventExtraData *extraData = [self extraDataForEvent: event];
227+ [self sendEventsInState: RNGestureHandlerStateEnd forViewWithTag: _view.reactTag withExtraData: extraData];
228+ [self sendEventsInState: RNGestureHandlerStateUndetermined forViewWithTag: _view.reactTag withExtraData: extraData];
232229}
233230
234231@end
0 commit comments