diff --git a/platform/platform-impl/src/com/intellij/ui/mac/touchbar/TBItemButton.java b/platform/platform-impl/src/com/intellij/ui/mac/touchbar/TBItemButton.java index 10861168d514..10d9ad98427c 100644 --- a/platform/platform-impl/src/com/intellij/ui/mac/touchbar/TBItemButton.java +++ b/platform/platform-impl/src/com/intellij/ui/mac/touchbar/TBItemButton.java @@ -5,6 +5,7 @@ import com.intellij.openapi.application.Application; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.util.Comparing; +import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.IconLoader; import com.intellij.openapi.util.Pair; import com.intellij.ui.mac.foundation.ID; @@ -237,7 +238,10 @@ class TBItemButton extends TBItem { @Override protected ID _createNativePeer() { - final Icon icon = myOriginIcon != null ? getDarkIcon(myOriginIcon) : null; + Icon icon = null; + if (myOriginIcon != null) { + icon = ApplicationManager.getApplication().runReadAction((Computable)() -> getDarkIcon(myOriginIcon)); + } final ID result = NST.createButton(getUid(), myLayoutBits, _validateFlags(), myText, icon, myNativeCallback); if (myHasArrowIcon) { final Icon ic = IconLoader.getIcon("/mac/touchbar/popoverArrow_dark.svg");