public static void showBalloon(@NotNull Project project, @NotNull @PopupContent String message, @NotNull MessageType messageType) {
    // ripped from com.intellij.openapi.vcs.changes.ui.ChangesViewBalloonProblemNotifier
    final JFrame frame = WindowManager.getInstance().getFrame(project.isDefault() ? null : project);
    if (frame == null) return;
    final JComponent component = frame.getRootPane();
    if (component == null) return;
    final Rectangle rect = component.getVisibleRect();
    final Point p = new Point(rect.x + rect.width - 10, rect.y + 10);
    final RelativePoint point = new RelativePoint(component, p);

    JBPopupFactory.getInstance().createHtmlTextBalloonBuilder(message, messageType.getDefaultIcon(), messageType.getPopupBackground(), null)
                  .setShowCallout(false).setCloseButtonEnabled(true)
                  .createBalloon().show(point, Balloon.Position.atLeft);
  }
public static void showBalloon(@NotNull Project project, @NotNull @PopupContent String message, @NotNull MessageType messageType)