From 645514a8e7dc3f6fd2b8777ec033d134d2de0353 Mon Sep 17 00:00:00 2001 From: "Denis.Zhdanov" Date: Wed, 4 Jul 2012 18:28:58 +0400 Subject: [PATCH] IDEA-66333 Quick documentation lookup on mouse hover Don't show auto quick doc if IDE frame doesn't have focus --- .../documentation/QuickDocOnMouseOverManager.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/documentation/QuickDocOnMouseOverManager.java b/platform/lang-impl/src/com/intellij/codeInsight/documentation/QuickDocOnMouseOverManager.java index edfef729531f..23c1813f8449 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/documentation/QuickDocOnMouseOverManager.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/documentation/QuickDocOnMouseOverManager.java @@ -23,6 +23,7 @@ import com.intellij.openapi.editor.event.*; import com.intellij.openapi.editor.ex.EditorSettingsExternalizable; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.popup.JBPopup; +import com.intellij.openapi.wm.WindowManager; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; @@ -33,6 +34,7 @@ import com.intellij.util.containers.WeakHashMap; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import javax.swing.*; import java.awt.*; import java.lang.ref.WeakReference; import java.util.HashMap; @@ -55,6 +57,7 @@ public class QuickDocOnMouseOverManager { @NotNull private final Alarm myAlarm = new Alarm(Alarm.ThreadToUse.SWING_THREAD); @NotNull private final Runnable myRequest = new MyShowQuickDocRequest(); @NotNull private final Runnable myHintCloseCallback = new MyCloseDocCallback(); + @NotNull private final WindowManager myWindowManager = WindowManager.getInstance(); private final Map myActiveElements = new WeakHashMap(); @@ -116,6 +119,11 @@ public class QuickDocOnMouseOverManager { return; } + JFrame frame = myWindowManager.getFrame(project); + if (frame != null && !frame.isFocused()) { + return; + } + DocumentationManager documentationManager = DocumentationManager.getInstance(project); JBPopup hint = documentationManager.getDocInfoHint(); if (hint != null) {