From 2a46c39cf93e8da10ab67711e758305bfc58a95c Mon Sep 17 00:00:00 2001 From: "Vassiliy.Kudryashov" Date: Wed, 24 May 2017 23:21:12 +0300 Subject: [PATCH] IDEA-172066 Toolwindow activates in another project --- .../src/com/intellij/openapi/wm/impl/ToolWindowImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowImpl.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowImpl.java index 89751f2c1923..43e2540e9fd2 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowImpl.java @@ -30,6 +30,7 @@ import com.intellij.openapi.util.BusyObject; import com.intellij.openapi.util.Disposer; import com.intellij.openapi.wm.*; import com.intellij.openapi.wm.ex.ToolWindowEx; +import com.intellij.openapi.wm.ex.WindowManagerEx; import com.intellij.openapi.wm.impl.commands.FinalizableCommand; import com.intellij.openapi.wm.impl.content.ToolWindowContentUi; import com.intellij.ui.LayeredIcon; @@ -212,6 +213,10 @@ public final class ToolWindowImpl implements ToolWindowEx { @Override public final boolean isActive() { ApplicationManager.getApplication().assertIsDispatchThread(); + + IdeFrameImpl frame = WindowManagerEx.getInstanceEx().getFrame(myToolWindowManager.getProject()); + if (frame == null || !frame.isActive()) return false; + if (myToolWindowManager.isEditorComponentActive()) return false; return myToolWindowManager.isToolWindowActive(myId) || myDecorator != null && myDecorator.isFocused(); }