diff --git a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java index 3349c17a8280..d5d8e225d598 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java @@ -55,6 +55,7 @@ import com.intellij.ui.components.JBList; import com.intellij.ui.popup.AbstractPopup; import com.intellij.util.CollectConsumer; import com.intellij.util.containers.ContainerUtil; +import com.intellij.util.io.storage.HeavyProcessLatch; import com.intellij.util.ui.update.Activatable; import com.intellij.util.ui.update.UiNotifyConnector; import org.jetbrains.annotations.NotNull; @@ -287,13 +288,11 @@ public class LookupImpl extends LightweightHint implements LookupEx, Disposable, @Override public List getItems() { + if (ApplicationManager.getApplication().isDispatchThread()) { + HeavyProcessLatch.INSTANCE.stopThreadPrioritizing(); + } synchronized (myList) { - return ContainerUtil.findAll(getListModel().toList(), new Condition() { - @Override - public boolean value(LookupElement element) { - return !(element instanceof EmptyLookupItem); - } - }); + return ContainerUtil.findAll(getListModel().toList(), element -> !(element instanceof EmptyLookupItem)); } }