@Override
  public synchronized void removeProjectPane(@NotNull AbstractProjectViewPane pane) {
    ThreadingAssertions.assertEventDispatchThread();
    uninitializedPanes.remove(pane);
    //assume we are completely initialized here
    @NotNull String idToRemove = pane.getId();

    if (!idToPane.containsKey(idToRemove)) return;
    for (int i = getContentManager().getContentCount() - 1; i >= 0; i--) {
      Content content = getContentManager().getContent(i);
      String id = content != null ? content.getUserData(ID_KEY) : null;
      if (idToRemove.equals(id)) {
        getContentManager().removeContent(content, true);
      }
    }
    idToPane.remove(idToRemove);
    mySelectInTargets.remove(idToRemove);
    viewSelectionChanged();
  }
@Override
  public synchronized void removeProjectPane(@NotNull AbstractProjectViewPane pane)