示例#1
0
  _intersectAndDispatch (callbackName, mouseEvent) {
    const event = SyntheticMouseEvent.getPooled(null, null, mouseEvent,
      mouseEvent.target)

    const intersections = this._getIntersections(
      tempVector2.set(event.clientX, event.clientY))

    ReactUpdates.batchedUpdates(() => {
      for (let i = 0; i < intersections.length; ++i) {
        const intersection = intersections[i]

        if (event.isDefaultPrevented() || event.isPropagationStopped()) {
          return
        }

        const object = intersection.object

        this.dispatchEvent(object, callbackName, event, intersection)
      }
    })

    return {
      event,
      intersections,
    }
  }
示例#2
0
 _createSyntheticMouseEvent (eventType, prototype) {
   return SyntheticMouseEvent.getPooled(null, null,
     new MouseEvent(eventType, prototype), prototype.target)
 }