private void performTermination() {
    eventTarget.setOnDragDetected(null);
    eventTarget.setOnMouseReleased(null);
    eventTarget.setOnMouseExited(null);

    try {
      observer.gestureDidTerminate(this);
    } finally {
      observer = null;
      eventTarget = null;
    }
  }
  private void performTermination() {
    final Node glassLayer = contentPanelController.getGlassLayer();
    glassLayer.setOnDragDetected(null);
    glassLayer.setOnMouseReleased(null);
    glassLayer.setOnKeyPressed(null);
    glassLayer.setOnKeyReleased(null);

    try {
      observer.gestureDidTerminate(this);
    } finally {
      observer = null;
      mousePressedEvent = null;
      lastMouseEvent = null;
      mouseDidDrag = false;
    }
  }