void (Project project) { ApplicationManager.getApplication().invokeLater(() -> { JTree tree = ProjectView.getInstance(project).getCurrentProjectViewPane().getTree(); String shortcutText = KeymapUtil.getShortcutText(IdeActions.ACTION_NEW_ELEMENT); GotItTooltip tooltip = new GotItTooltip("empty.project.create.file", IdeBundle.message("to.create.new.file.tooltip", shortcutText), project) .withPosition(Balloon.Position.atRight); ApplicationManager.getApplication().getMessageBus().connect(tooltip).subscribe(AnActionListener.TOPIC, new AnActionListener() { @Override public void afterActionPerformed(@NotNull AnAction action, @NotNull AnActionEvent event, @NotNull AnActionResult result) { tooltip.gotIt(); Disposer.dispose(tooltip); } }); tooltip.show(tree, (component, balloon) -> getPoint(tree)); }); }