private void invokeGutterAction(MouseEvent e) {
    PointInfo info = getPointInfo(e.getPoint());
    GutterIconRenderer renderer = info == null ? null : info.renderer;
    AnAction clickAction = null;
    if (renderer != null) {
      var btn = e.getButton();
      if (btn == MouseEvent.BUTTON2 ||
          (btn == MouseEvent.BUTTON1 && BitUtil.isSet(e.getModifiersEx(), InputEvent.ALT_DOWN_MASK))) {
        clickAction = renderer.getMiddleButtonClickAction();
      }
      else if (btn == MouseEvent.BUTTON1) {
        clickAction = renderer.getClickAction();
      }
    }
    if (clickAction != null) {
      myLastActionableClick = new ClickInfo(EditorUtil.yPositionToLogicalLine(myEditor, e), info.iconCenterPosition);
      logGutterIconClick(renderer);

      e.consume();
      performAction(clickAction, e, ActionPlaces.EDITOR_GUTTER, DataManager.getInstance().getDataContext(this), info);
      repaint();
    }
    else {
      ActiveGutterRenderer lineRenderer = e.isConsumed() ? null : getActiveRendererByMouseEvent(e);
      if (lineRenderer != null) {
        lineRenderer.doAction(myEditor, e);
      }
      else {
        fireEventToTextAnnotationListeners(e);
      }
    }
  }
private void invokeGutterAction(MouseEvent e)