[performance] cache icon that IDE uses often

This commit is contained in:
Maxim.Mossienko
2017-11-17 20:08:26 +01:00
parent 354aa5d388
commit c22d69b11e
@@ -49,10 +49,14 @@ import java.beans.PropertyChangeListener;
public abstract class ComboBoxAction extends AnAction implements CustomComponentAction {
private static Icon myIcon = null;
private static Icon myDisabledIcon = null;
private static Icon myWin10ComboDropTriagleIcon = null;
public static Icon getArrowIcon(boolean enabled) {
if (UIUtil.isUnderWin10LookAndFeel()) {
return IconLoader.getIcon("/com/intellij/ide/ui/laf/icons/win10/comboDropTriangle.png");
if (myWin10ComboDropTriagleIcon == null) {
myWin10ComboDropTriagleIcon = IconLoader.getIcon("/com/intellij/ide/ui/laf/icons/win10/comboDropTriangle.png");
}
return myWin10ComboDropTriagleIcon;
}
Icon icon = UIUtil.isUnderDarcula() ? AllIcons.General.ComboArrow : AllIcons.General.ComboBoxButtonArrow;
if (myIcon != icon) {