void (@NotNull IdeFrameImpl movedFrame, @Nullable IdeFrameImpl target, int index) { IdeFrame[] helpers = WindowManager.getInstance().getAllProjectFrames(); for (IdeFrame helper : helpers) { IdeFrameImpl frame = ((ProjectFrameHelper)helper).getFrame(); if (frame != movedFrame && frame != target) { removeFromFrame(frame, movedFrame); } } removeFromFrame(movedFrame, null); if (target == null) { return; } TabsInfo info = Objects.requireNonNull(getTabsInfo(helpers, target)); for (IdeFrameImpl frame : info.frames) { if (frame == movedFrame || index == -1) { createTabBarsForFrame(frame, info.helpersMap.get(frame), info.frames); } else { insertTabForFrame(frame, movedFrame, index); } } }