@Override
  public @NotNull RelativePoint guessBestPopupLocation(@NotNull AnAction action, @NotNull AnActionEvent event) {
    Component component = event.getData(PlatformCoreDataKeys.CONTEXT_COMPONENT);
    if (!(component instanceof JComponent)) {
      throw new AssertionError("Component is null for " + action.getClass().getName() + "@" + event.getPlace() +
                               "(" + event.getPresentation().getText() + "): " + component);
    }
    var point = CommonActionsPanel.getPreferredPopupPoint(action, component);
    if (point != null) return point;
    if (event.getInputEvent() instanceof MouseEvent me &&
        me.getComponent() instanceof JComponent button) {
      return RelativePoint.getSouthWestOf(button);
    }
    return guessBestPopupLocation(event.getDataContext());
  }
@Override
  public @NotNull RelativePoint guessBestPopupLocation(@NotNull AnAction action, @NotNull AnActionEvent event)