From b8937b22b6ce670f421c7c20c251ebaae142ee4c Mon Sep 17 00:00:00 2001 From: Vassiliy Date: Wed, 30 Oct 2013 10:33:10 +0400 Subject: [PATCH] FIX: IllegalStateException with many duplicates --- .../com/intellij/openapi/wm/impl/InternalDecorator.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/InternalDecorator.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/InternalDecorator.java index 5767ed2a8ce1..5e5acb7985a5 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/InternalDecorator.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/InternalDecorator.java @@ -332,7 +332,7 @@ public final class InternalDecorator extends JPanel implements Queryable, TypeSa myHeader.setAdditionalTitleActions(actions); } - private static class InnerPanelBorder implements Border { + private class InnerPanelBorder implements Border { private final ToolWindow myWindow; @@ -370,7 +370,10 @@ public final class InternalDecorator extends JPanel implements Queryable, TypeSa @Override public Insets getBorderInsets(final Component c) { - if (myWindow.getType() == ToolWindowType.FLOATING) return new Insets(0, 0, 0, 0); + ToolWindowManager toolWindowManager = ToolWindowManager.getInstance(myProject); + if (!(toolWindowManager instanceof ToolWindowManagerImpl) + || !((ToolWindowManagerImpl)toolWindowManager).isToolWindowRegistered(myInfo.getId()) + || myWindow.getType() == ToolWindowType.FLOATING) return new Insets(0, 0, 0, 0); ToolWindowAnchor anchor = myWindow.getAnchor(); Component component = myWindow.getComponent(); Container parent = component.getParent();