ActionButton (@NotNull AnAction action, ActionButtonLook look, @NotNull String place, @NotNull Presentation presentation, Supplier<? extends @NotNull Dimension> minimumSize) { ActionButton button = new ActionButton(action, presentation, place, getFeedbackButtonSize()) { @Override protected void paintButtonLook(Graphics g) { // do not paint an icon background getButtonLook().paintIcon(g, this, getIcon()); } @Override public Dimension getPreferredSize() { return getFeedbackButtonSize(); } @Override public Dimension getMaximumSize() { return getFeedbackButtonSize(); } }; int iconIndent = TipUiSettings.getFeedbackIconIndent(); button.setBorder(BorderFactory.createEmptyBorder(iconIndent, iconIndent, iconIndent, iconIndent)); button.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); return button; }