From 8eccc6d4298391fc3af8993aa0d5cd1d22717eb5 Mon Sep 17 00:00:00 2001 From: Denis Fokin Date: Mon, 25 Mar 2019 19:27:09 +0300 Subject: [PATCH] IDEA-209224 Can't use "Injected Language" feature because popup doesn't appear Revert e7bab9106eb11e2b42d69a64d8844556c4f390d9 --- .../src/com/intellij/ui/popup/AbstractPopup.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/ui/popup/AbstractPopup.java b/platform/platform-impl/src/com/intellij/ui/popup/AbstractPopup.java index 24097086732c..c66fbb3351a4 100644 --- a/platform/platform-impl/src/com/intellij/ui/popup/AbstractPopup.java +++ b/platform/platform-impl/src/com/intellij/ui/popup/AbstractPopup.java @@ -32,10 +32,7 @@ import com.intellij.ui.awt.RelativePoint; import com.intellij.ui.components.JBLabel; import com.intellij.ui.mac.touchbar.TouchBarsManager; import com.intellij.ui.speedSearch.SpeedSearch; -import com.intellij.util.BooleanFunction; -import com.intellij.util.FunctionUtil; -import com.intellij.util.IJSwingUtilities; -import com.intellij.util.Processor; +import com.intellij.util.*; import com.intellij.util.containers.ContainerUtil; import com.intellij.util.containers.WeakList; import com.intellij.util.ui.*; @@ -774,6 +771,7 @@ public class AbstractPopup implements JBPopup { debugState("show popup", State.INIT); myState = State.SHOWING; + installWindowHook(this); installProjectDisposer(); addActivity(); @@ -1118,6 +1116,14 @@ public class AbstractPopup implements JBPopup { } } + //Sometimes just after popup was shown the WINDOW_ACTIVATED cancels it + private static void installWindowHook(final AbstractPopup popup) { + if (popup.myCancelOnWindow) { + popup.myCancelOnWindow = false; + new Alarm(popup).addRequest(() -> popup.myCancelOnWindow = true, 100); + } + } + private void addActivity() { UiActivityMonitor.getInstance().addActivity(myActivityKey); }