dockview-core 1.9.2 → 1.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/component.api.d.ts +35 -8
- package/dist/cjs/api/component.api.js +37 -7
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts +7 -1
- package/dist/cjs/api/dockviewGroupPanelApi.js +22 -3
- package/dist/cjs/api/dockviewPanelApi.d.ts +24 -7
- package/dist/cjs/api/dockviewPanelApi.js +60 -14
- package/dist/cjs/api/gridviewPanelApi.d.ts +0 -1
- package/dist/cjs/api/gridviewPanelApi.js +1 -4
- package/dist/cjs/api/panelApi.d.ts +10 -8
- package/dist/cjs/api/panelApi.js +19 -29
- package/dist/cjs/api/paneviewPanelApi.d.ts +0 -1
- package/dist/cjs/api/paneviewPanelApi.js +0 -1
- package/dist/cjs/api/splitviewPanelApi.d.ts +0 -1
- package/dist/cjs/api/splitviewPanelApi.js +0 -1
- package/dist/cjs/array.d.ts +0 -1
- package/dist/cjs/array.js +0 -1
- package/dist/cjs/constants.d.ts +0 -1
- package/dist/cjs/constants.js +0 -1
- package/dist/cjs/dnd/abstractDragHandler.d.ts +0 -1
- package/dist/cjs/dnd/abstractDragHandler.js +0 -1
- package/dist/cjs/dnd/dataTransfer.d.ts +0 -1
- package/dist/cjs/dnd/dataTransfer.js +0 -1
- package/dist/cjs/dnd/dnd.d.ts +0 -1
- package/dist/cjs/dnd/dnd.js +0 -1
- package/dist/cjs/dnd/droptarget.d.ts +20 -9
- package/dist/cjs/dnd/droptarget.js +71 -14
- package/dist/cjs/dnd/ghost.d.ts +0 -1
- package/dist/cjs/dnd/ghost.js +0 -1
- package/dist/cjs/dnd/groupDragHandler.d.ts +0 -1
- package/dist/cjs/dnd/groupDragHandler.js +1 -2
- package/dist/cjs/dnd/overlay.d.ts +0 -1
- package/dist/cjs/dnd/overlay.js +0 -1
- package/dist/cjs/dockview/components/panel/content.d.ts +0 -1
- package/dist/cjs/dockview/components/panel/content.js +6 -7
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +0 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js +0 -1
- package/dist/cjs/dockview/components/tab/tab.d.ts +5 -13
- package/dist/cjs/dockview/components/tab/tab.js +5 -6
- package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +17 -14
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +26 -22
- package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +3 -3
- package/dist/cjs/dockview/components/titlebar/voidContainer.js +5 -6
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +0 -1
- package/dist/cjs/dockview/components/watermark/watermark.js +0 -1
- package/dist/cjs/dockview/deserializer.d.ts +0 -1
- package/dist/cjs/dockview/deserializer.js +0 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +86 -25
- package/dist/cjs/dockview/dockviewComponent.js +586 -198
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts +0 -1
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +0 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.js +6 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +81 -37
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +226 -57
- package/dist/cjs/dockview/dockviewPanel.d.ts +8 -3
- package/dist/cjs/dockview/dockviewPanel.js +39 -12
- package/dist/cjs/dockview/dockviewPanelModel.d.ts +1 -4
- package/dist/cjs/dockview/dockviewPanelModel.js +2 -22
- package/dist/cjs/dockview/options.d.ts +10 -6
- package/dist/cjs/dockview/options.js +0 -1
- package/dist/cjs/dockview/types.d.ts +0 -11
- package/dist/cjs/dockview/types.js +0 -9
- package/dist/cjs/dom.d.ts +0 -1
- package/dist/cjs/dom.js +0 -1
- package/dist/cjs/events.d.ts +10 -1
- package/dist/cjs/events.js +25 -2
- package/dist/cjs/gridview/baseComponentGridview.d.ts +15 -16
- package/dist/cjs/gridview/baseComponentGridview.js +37 -27
- package/dist/cjs/gridview/basePanelView.d.ts +0 -1
- package/dist/cjs/gridview/basePanelView.js +7 -2
- package/dist/cjs/gridview/branchNode.d.ts +3 -2
- package/dist/cjs/gridview/branchNode.js +12 -2
- package/dist/cjs/gridview/gridview.d.ts +5 -3
- package/dist/cjs/gridview/gridview.js +54 -21
- package/dist/cjs/gridview/gridviewComponent.d.ts +10 -2
- package/dist/cjs/gridview/gridviewComponent.js +14 -1
- package/dist/cjs/gridview/gridviewPanel.d.ts +3 -3
- package/dist/cjs/gridview/gridviewPanel.js +2 -3
- package/dist/cjs/gridview/leafNode.d.ts +0 -1
- package/dist/cjs/gridview/leafNode.js +0 -1
- package/dist/cjs/gridview/options.d.ts +1 -2
- package/dist/cjs/gridview/options.js +0 -1
- package/dist/cjs/gridview/types.d.ts +0 -1
- package/dist/cjs/gridview/types.js +0 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +0 -2
- package/dist/cjs/lifecycle.d.ts +3 -4
- package/dist/cjs/lifecycle.js +5 -2
- package/dist/cjs/math.d.ts +0 -1
- package/dist/cjs/math.js +0 -1
- package/dist/cjs/overlayRenderContainer.d.ts +1 -1
- package/dist/cjs/overlayRenderContainer.js +8 -4
- package/dist/cjs/panel/componentFactory.d.ts +0 -1
- package/dist/cjs/panel/componentFactory.js +0 -1
- package/dist/cjs/panel/types.d.ts +1 -2
- package/dist/cjs/panel/types.js +0 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +0 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js +0 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +0 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js +0 -1
- package/dist/cjs/paneview/options.d.ts +1 -2
- package/dist/cjs/paneview/options.js +0 -1
- package/dist/cjs/paneview/paneview.d.ts +1 -1
- package/dist/cjs/paneview/paneview.js +3 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +2 -1
- package/dist/cjs/paneview/paneviewComponent.js +6 -1
- package/dist/cjs/paneview/paneviewPanel.d.ts +2 -1
- package/dist/cjs/paneview/paneviewPanel.js +5 -2
- package/dist/cjs/popoutWindow.d.ts +15 -4
- package/dist/cjs/popoutWindow.js +140 -56
- package/dist/cjs/resizable.d.ts +1 -2
- package/dist/cjs/resizable.js +1 -10
- package/dist/cjs/splitview/options.d.ts +3 -7
- package/dist/cjs/splitview/options.js +0 -1
- package/dist/cjs/splitview/splitview.d.ts +3 -1
- package/dist/cjs/splitview/splitview.js +12 -1
- package/dist/cjs/splitview/splitviewComponent.d.ts +1 -2
- package/dist/cjs/splitview/splitviewComponent.js +5 -6
- package/dist/cjs/splitview/splitviewPanel.d.ts +2 -3
- package/dist/cjs/splitview/splitviewPanel.js +1 -2
- package/dist/cjs/splitview/viewItem.d.ts +0 -1
- package/dist/cjs/splitview/viewItem.js +0 -1
- package/dist/cjs/svg.d.ts +0 -1
- package/dist/cjs/svg.js +0 -1
- package/dist/cjs/types.d.ts +0 -1
- package/dist/cjs/types.js +0 -1
- package/dist/dockview-core.amd.js +1298 -531
- package/dist/dockview-core.amd.js.map +1 -1
- package/dist/dockview-core.amd.min.js +2 -2
- package/dist/dockview-core.amd.min.js.map +1 -1
- package/dist/dockview-core.amd.min.noStyle.js +2 -2
- package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
- package/dist/dockview-core.amd.noStyle.js +1297 -530
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +1298 -531
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +1296 -532
- package/dist/dockview-core.esm.js.map +1 -1
- package/dist/dockview-core.esm.min.js +2 -2
- package/dist/dockview-core.esm.min.js.map +1 -1
- package/dist/dockview-core.js +1298 -531
- package/dist/dockview-core.js.map +1 -1
- package/dist/dockview-core.min.js +2 -2
- package/dist/dockview-core.min.js.map +1 -1
- package/dist/dockview-core.min.noStyle.js +2 -2
- package/dist/dockview-core.min.noStyle.js.map +1 -1
- package/dist/dockview-core.noStyle.js +1297 -530
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/component.api.d.ts +35 -8
- package/dist/esm/api/component.api.js +29 -7
- package/dist/esm/api/dockviewGroupPanelApi.d.ts +7 -1
- package/dist/esm/api/dockviewGroupPanelApi.js +22 -3
- package/dist/esm/api/dockviewPanelApi.d.ts +24 -7
- package/dist/esm/api/dockviewPanelApi.js +56 -14
- package/dist/esm/api/gridviewPanelApi.d.ts +0 -1
- package/dist/esm/api/gridviewPanelApi.js +1 -4
- package/dist/esm/api/panelApi.d.ts +10 -8
- package/dist/esm/api/panelApi.js +16 -29
- package/dist/esm/api/paneviewPanelApi.d.ts +0 -1
- package/dist/esm/api/paneviewPanelApi.js +0 -1
- package/dist/esm/api/splitviewPanelApi.d.ts +0 -1
- package/dist/esm/api/splitviewPanelApi.js +0 -1
- package/dist/esm/array.d.ts +0 -1
- package/dist/esm/array.js +0 -1
- package/dist/esm/constants.d.ts +0 -1
- package/dist/esm/constants.js +0 -1
- package/dist/esm/dnd/abstractDragHandler.d.ts +0 -1
- package/dist/esm/dnd/abstractDragHandler.js +0 -1
- package/dist/esm/dnd/dataTransfer.d.ts +0 -1
- package/dist/esm/dnd/dataTransfer.js +0 -1
- package/dist/esm/dnd/dnd.d.ts +0 -1
- package/dist/esm/dnd/dnd.js +0 -1
- package/dist/esm/dnd/droptarget.d.ts +20 -9
- package/dist/esm/dnd/droptarget.js +59 -14
- package/dist/esm/dnd/ghost.d.ts +0 -1
- package/dist/esm/dnd/ghost.js +0 -1
- package/dist/esm/dnd/groupDragHandler.d.ts +0 -1
- package/dist/esm/dnd/groupDragHandler.js +1 -2
- package/dist/esm/dnd/overlay.d.ts +0 -1
- package/dist/esm/dnd/overlay.js +0 -1
- package/dist/esm/dockview/components/panel/content.d.ts +0 -1
- package/dist/esm/dockview/components/panel/content.js +6 -7
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -1
- package/dist/esm/dockview/components/tab/defaultTab.js +0 -1
- package/dist/esm/dockview/components/tab/tab.d.ts +5 -13
- package/dist/esm/dockview/components/tab/tab.js +6 -7
- package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +17 -14
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +24 -20
- package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +3 -3
- package/dist/esm/dockview/components/titlebar/voidContainer.js +6 -7
- package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -1
- package/dist/esm/dockview/components/watermark/watermark.js +0 -1
- package/dist/esm/dockview/deserializer.d.ts +0 -1
- package/dist/esm/dockview/deserializer.js +0 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +86 -25
- package/dist/esm/dockview/dockviewComponent.js +529 -163
- package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +0 -1
- package/dist/esm/dockview/dockviewFloatingGroupPanel.js +0 -1
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +1 -1
- package/dist/esm/dockview/dockviewGroupPanel.js +6 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +81 -37
- package/dist/esm/dockview/dockviewGroupPanelModel.js +169 -53
- package/dist/esm/dockview/dockviewPanel.d.ts +8 -3
- package/dist/esm/dockview/dockviewPanel.js +39 -12
- package/dist/esm/dockview/dockviewPanelModel.d.ts +1 -4
- package/dist/esm/dockview/dockviewPanelModel.js +2 -22
- package/dist/esm/dockview/options.d.ts +10 -6
- package/dist/esm/dockview/options.js +0 -1
- package/dist/esm/dockview/types.d.ts +0 -11
- package/dist/esm/dockview/types.js +1 -8
- package/dist/esm/dom.d.ts +0 -1
- package/dist/esm/dom.js +0 -1
- package/dist/esm/events.d.ts +10 -1
- package/dist/esm/events.js +14 -1
- package/dist/esm/gridview/baseComponentGridview.d.ts +15 -16
- package/dist/esm/gridview/baseComponentGridview.js +33 -27
- package/dist/esm/gridview/basePanelView.d.ts +0 -1
- package/dist/esm/gridview/basePanelView.js +7 -2
- package/dist/esm/gridview/branchNode.d.ts +3 -2
- package/dist/esm/gridview/branchNode.js +8 -2
- package/dist/esm/gridview/gridview.d.ts +5 -3
- package/dist/esm/gridview/gridview.js +49 -20
- package/dist/esm/gridview/gridviewComponent.d.ts +10 -2
- package/dist/esm/gridview/gridviewComponent.js +14 -1
- package/dist/esm/gridview/gridviewPanel.d.ts +3 -3
- package/dist/esm/gridview/gridviewPanel.js +2 -3
- package/dist/esm/gridview/leafNode.d.ts +0 -1
- package/dist/esm/gridview/leafNode.js +0 -1
- package/dist/esm/gridview/options.d.ts +1 -2
- package/dist/esm/gridview/options.js +0 -1
- package/dist/esm/gridview/types.d.ts +0 -1
- package/dist/esm/gridview/types.js +0 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +0 -2
- package/dist/esm/lifecycle.d.ts +3 -4
- package/dist/esm/lifecycle.js +5 -2
- package/dist/esm/math.d.ts +0 -1
- package/dist/esm/math.js +0 -1
- package/dist/esm/overlayRenderContainer.d.ts +1 -1
- package/dist/esm/overlayRenderContainer.js +8 -4
- package/dist/esm/panel/componentFactory.d.ts +0 -1
- package/dist/esm/panel/componentFactory.js +0 -1
- package/dist/esm/panel/types.d.ts +1 -2
- package/dist/esm/panel/types.js +0 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +0 -1
- package/dist/esm/paneview/defaultPaneviewHeader.js +0 -1
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +0 -1
- package/dist/esm/paneview/draggablePaneviewPanel.js +0 -1
- package/dist/esm/paneview/options.d.ts +1 -2
- package/dist/esm/paneview/options.js +0 -1
- package/dist/esm/paneview/paneview.d.ts +1 -1
- package/dist/esm/paneview/paneview.js +3 -1
- package/dist/esm/paneview/paneviewComponent.d.ts +2 -1
- package/dist/esm/paneview/paneviewComponent.js +6 -1
- package/dist/esm/paneview/paneviewPanel.d.ts +2 -1
- package/dist/esm/paneview/paneviewPanel.js +5 -2
- package/dist/esm/popoutWindow.d.ts +15 -4
- package/dist/esm/popoutWindow.js +105 -52
- package/dist/esm/resizable.d.ts +1 -2
- package/dist/esm/resizable.js +1 -10
- package/dist/esm/splitview/options.d.ts +3 -7
- package/dist/esm/splitview/options.js +0 -1
- package/dist/esm/splitview/splitview.d.ts +3 -1
- package/dist/esm/splitview/splitview.js +8 -1
- package/dist/esm/splitview/splitviewComponent.d.ts +1 -2
- package/dist/esm/splitview/splitviewComponent.js +5 -6
- package/dist/esm/splitview/splitviewPanel.d.ts +2 -3
- package/dist/esm/splitview/splitviewPanel.js +1 -2
- package/dist/esm/splitview/viewItem.d.ts +0 -1
- package/dist/esm/splitview/viewItem.js +0 -1
- package/dist/esm/svg.d.ts +0 -1
- package/dist/esm/svg.js +0 -1
- package/dist/esm/types.d.ts +0 -1
- package/dist/esm/types.js +0 -1
- package/dist/styles/dockview.css +20 -6
- package/package.json +3 -3
- package/dist/cjs/api/component.api.d.ts.map +0 -1
- package/dist/cjs/api/component.api.js.map +0 -1
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts.map +0 -1
- package/dist/cjs/api/dockviewGroupPanelApi.js.map +0 -1
- package/dist/cjs/api/dockviewPanelApi.d.ts.map +0 -1
- package/dist/cjs/api/dockviewPanelApi.js.map +0 -1
- package/dist/cjs/api/gridviewPanelApi.d.ts.map +0 -1
- package/dist/cjs/api/gridviewPanelApi.js.map +0 -1
- package/dist/cjs/api/panelApi.d.ts.map +0 -1
- package/dist/cjs/api/panelApi.js.map +0 -1
- package/dist/cjs/api/paneviewPanelApi.d.ts.map +0 -1
- package/dist/cjs/api/paneviewPanelApi.js.map +0 -1
- package/dist/cjs/api/splitviewPanelApi.d.ts.map +0 -1
- package/dist/cjs/api/splitviewPanelApi.js.map +0 -1
- package/dist/cjs/array.d.ts.map +0 -1
- package/dist/cjs/array.js.map +0 -1
- package/dist/cjs/constants.d.ts.map +0 -1
- package/dist/cjs/constants.js.map +0 -1
- package/dist/cjs/dnd/abstractDragHandler.d.ts.map +0 -1
- package/dist/cjs/dnd/abstractDragHandler.js.map +0 -1
- package/dist/cjs/dnd/dataTransfer.d.ts.map +0 -1
- package/dist/cjs/dnd/dataTransfer.js.map +0 -1
- package/dist/cjs/dnd/dnd.d.ts.map +0 -1
- package/dist/cjs/dnd/dnd.js.map +0 -1
- package/dist/cjs/dnd/droptarget.d.ts.map +0 -1
- package/dist/cjs/dnd/droptarget.js.map +0 -1
- package/dist/cjs/dnd/ghost.d.ts.map +0 -1
- package/dist/cjs/dnd/ghost.js.map +0 -1
- package/dist/cjs/dnd/groupDragHandler.d.ts.map +0 -1
- package/dist/cjs/dnd/groupDragHandler.js.map +0 -1
- package/dist/cjs/dnd/overlay.d.ts.map +0 -1
- package/dist/cjs/dnd/overlay.js.map +0 -1
- package/dist/cjs/dockview/components/panel/content.d.ts.map +0 -1
- package/dist/cjs/dockview/components/panel/content.js.map +0 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts.map +0 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js.map +0 -1
- package/dist/cjs/dockview/components/tab/tab.d.ts.map +0 -1
- package/dist/cjs/dockview/components/tab/tab.js.map +0 -1
- package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts.map +0 -1
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js.map +0 -1
- package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts.map +0 -1
- package/dist/cjs/dockview/components/titlebar/voidContainer.js.map +0 -1
- package/dist/cjs/dockview/components/watermark/watermark.d.ts.map +0 -1
- package/dist/cjs/dockview/components/watermark/watermark.js.map +0 -1
- package/dist/cjs/dockview/deserializer.d.ts.map +0 -1
- package/dist/cjs/dockview/deserializer.js.map +0 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewComponent.js.map +0 -1
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.js.map +0 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewGroupPanel.js.map +0 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.js.map +0 -1
- package/dist/cjs/dockview/dockviewPanel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewPanel.js.map +0 -1
- package/dist/cjs/dockview/dockviewPanelModel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewPanelModel.js.map +0 -1
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts +0 -16
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts.map +0 -1
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.js +0 -50
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.js.map +0 -1
- package/dist/cjs/dockview/options.d.ts.map +0 -1
- package/dist/cjs/dockview/options.js.map +0 -1
- package/dist/cjs/dockview/types.d.ts.map +0 -1
- package/dist/cjs/dockview/types.js.map +0 -1
- package/dist/cjs/dom.d.ts.map +0 -1
- package/dist/cjs/dom.js.map +0 -1
- package/dist/cjs/events.d.ts.map +0 -1
- package/dist/cjs/events.js.map +0 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts.map +0 -1
- package/dist/cjs/gridview/baseComponentGridview.js.map +0 -1
- package/dist/cjs/gridview/basePanelView.d.ts.map +0 -1
- package/dist/cjs/gridview/basePanelView.js.map +0 -1
- package/dist/cjs/gridview/branchNode.d.ts.map +0 -1
- package/dist/cjs/gridview/branchNode.js.map +0 -1
- package/dist/cjs/gridview/gridview.d.ts.map +0 -1
- package/dist/cjs/gridview/gridview.js.map +0 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts.map +0 -1
- package/dist/cjs/gridview/gridviewComponent.js.map +0 -1
- package/dist/cjs/gridview/gridviewPanel.d.ts.map +0 -1
- package/dist/cjs/gridview/gridviewPanel.js.map +0 -1
- package/dist/cjs/gridview/leafNode.d.ts.map +0 -1
- package/dist/cjs/gridview/leafNode.js.map +0 -1
- package/dist/cjs/gridview/options.d.ts.map +0 -1
- package/dist/cjs/gridview/options.js.map +0 -1
- package/dist/cjs/gridview/types.d.ts.map +0 -1
- package/dist/cjs/gridview/types.js.map +0 -1
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/lifecycle.d.ts.map +0 -1
- package/dist/cjs/lifecycle.js.map +0 -1
- package/dist/cjs/math.d.ts.map +0 -1
- package/dist/cjs/math.js.map +0 -1
- package/dist/cjs/overlayRenderContainer.d.ts.map +0 -1
- package/dist/cjs/overlayRenderContainer.js.map +0 -1
- package/dist/cjs/panel/componentFactory.d.ts.map +0 -1
- package/dist/cjs/panel/componentFactory.js.map +0 -1
- package/dist/cjs/panel/types.d.ts.map +0 -1
- package/dist/cjs/panel/types.js.map +0 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts.map +0 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js.map +0 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts.map +0 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js.map +0 -1
- package/dist/cjs/paneview/options.d.ts.map +0 -1
- package/dist/cjs/paneview/options.js.map +0 -1
- package/dist/cjs/paneview/paneview.d.ts.map +0 -1
- package/dist/cjs/paneview/paneview.js.map +0 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts.map +0 -1
- package/dist/cjs/paneview/paneviewComponent.js.map +0 -1
- package/dist/cjs/paneview/paneviewPanel.d.ts.map +0 -1
- package/dist/cjs/paneview/paneviewPanel.js.map +0 -1
- package/dist/cjs/popoutWindow.d.ts.map +0 -1
- package/dist/cjs/popoutWindow.js.map +0 -1
- package/dist/cjs/resizable.d.ts.map +0 -1
- package/dist/cjs/resizable.js.map +0 -1
- package/dist/cjs/splitview/options.d.ts.map +0 -1
- package/dist/cjs/splitview/options.js.map +0 -1
- package/dist/cjs/splitview/splitview.d.ts.map +0 -1
- package/dist/cjs/splitview/splitview.js.map +0 -1
- package/dist/cjs/splitview/splitviewComponent.d.ts.map +0 -1
- package/dist/cjs/splitview/splitviewComponent.js.map +0 -1
- package/dist/cjs/splitview/splitviewPanel.d.ts.map +0 -1
- package/dist/cjs/splitview/splitviewPanel.js.map +0 -1
- package/dist/cjs/splitview/viewItem.d.ts.map +0 -1
- package/dist/cjs/splitview/viewItem.js.map +0 -1
- package/dist/cjs/svg.d.ts.map +0 -1
- package/dist/cjs/svg.js.map +0 -1
- package/dist/cjs/types.d.ts.map +0 -1
- package/dist/cjs/types.js.map +0 -1
- package/dist/esm/api/component.api.d.ts.map +0 -1
- package/dist/esm/api/component.api.js.map +0 -1
- package/dist/esm/api/dockviewGroupPanelApi.d.ts.map +0 -1
- package/dist/esm/api/dockviewGroupPanelApi.js.map +0 -1
- package/dist/esm/api/dockviewPanelApi.d.ts.map +0 -1
- package/dist/esm/api/dockviewPanelApi.js.map +0 -1
- package/dist/esm/api/gridviewPanelApi.d.ts.map +0 -1
- package/dist/esm/api/gridviewPanelApi.js.map +0 -1
- package/dist/esm/api/panelApi.d.ts.map +0 -1
- package/dist/esm/api/panelApi.js.map +0 -1
- package/dist/esm/api/paneviewPanelApi.d.ts.map +0 -1
- package/dist/esm/api/paneviewPanelApi.js.map +0 -1
- package/dist/esm/api/splitviewPanelApi.d.ts.map +0 -1
- package/dist/esm/api/splitviewPanelApi.js.map +0 -1
- package/dist/esm/array.d.ts.map +0 -1
- package/dist/esm/array.js.map +0 -1
- package/dist/esm/constants.d.ts.map +0 -1
- package/dist/esm/constants.js.map +0 -1
- package/dist/esm/dnd/abstractDragHandler.d.ts.map +0 -1
- package/dist/esm/dnd/abstractDragHandler.js.map +0 -1
- package/dist/esm/dnd/dataTransfer.d.ts.map +0 -1
- package/dist/esm/dnd/dataTransfer.js.map +0 -1
- package/dist/esm/dnd/dnd.d.ts.map +0 -1
- package/dist/esm/dnd/dnd.js.map +0 -1
- package/dist/esm/dnd/droptarget.d.ts.map +0 -1
- package/dist/esm/dnd/droptarget.js.map +0 -1
- package/dist/esm/dnd/ghost.d.ts.map +0 -1
- package/dist/esm/dnd/ghost.js.map +0 -1
- package/dist/esm/dnd/groupDragHandler.d.ts.map +0 -1
- package/dist/esm/dnd/groupDragHandler.js.map +0 -1
- package/dist/esm/dnd/overlay.d.ts.map +0 -1
- package/dist/esm/dnd/overlay.js.map +0 -1
- package/dist/esm/dockview/components/panel/content.d.ts.map +0 -1
- package/dist/esm/dockview/components/panel/content.js.map +0 -1
- package/dist/esm/dockview/components/tab/defaultTab.d.ts.map +0 -1
- package/dist/esm/dockview/components/tab/defaultTab.js.map +0 -1
- package/dist/esm/dockview/components/tab/tab.d.ts.map +0 -1
- package/dist/esm/dockview/components/tab/tab.js.map +0 -1
- package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts.map +0 -1
- package/dist/esm/dockview/components/titlebar/tabsContainer.js.map +0 -1
- package/dist/esm/dockview/components/titlebar/voidContainer.d.ts.map +0 -1
- package/dist/esm/dockview/components/titlebar/voidContainer.js.map +0 -1
- package/dist/esm/dockview/components/watermark/watermark.d.ts.map +0 -1
- package/dist/esm/dockview/components/watermark/watermark.js.map +0 -1
- package/dist/esm/dockview/deserializer.d.ts.map +0 -1
- package/dist/esm/dockview/deserializer.js.map +0 -1
- package/dist/esm/dockview/dockviewComponent.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewComponent.js.map +0 -1
- package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewFloatingGroupPanel.js.map +0 -1
- package/dist/esm/dockview/dockviewGroupPanel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewGroupPanel.js.map +0 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.js.map +0 -1
- package/dist/esm/dockview/dockviewPanel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewPanel.js.map +0 -1
- package/dist/esm/dockview/dockviewPanelModel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewPanelModel.js.map +0 -1
- package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts +0 -16
- package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts.map +0 -1
- package/dist/esm/dockview/dockviewPopoutGroupPanel.js +0 -28
- package/dist/esm/dockview/dockviewPopoutGroupPanel.js.map +0 -1
- package/dist/esm/dockview/options.d.ts.map +0 -1
- package/dist/esm/dockview/options.js.map +0 -1
- package/dist/esm/dockview/types.d.ts.map +0 -1
- package/dist/esm/dockview/types.js.map +0 -1
- package/dist/esm/dom.d.ts.map +0 -1
- package/dist/esm/dom.js.map +0 -1
- package/dist/esm/events.d.ts.map +0 -1
- package/dist/esm/events.js.map +0 -1
- package/dist/esm/gridview/baseComponentGridview.d.ts.map +0 -1
- package/dist/esm/gridview/baseComponentGridview.js.map +0 -1
- package/dist/esm/gridview/basePanelView.d.ts.map +0 -1
- package/dist/esm/gridview/basePanelView.js.map +0 -1
- package/dist/esm/gridview/branchNode.d.ts.map +0 -1
- package/dist/esm/gridview/branchNode.js.map +0 -1
- package/dist/esm/gridview/gridview.d.ts.map +0 -1
- package/dist/esm/gridview/gridview.js.map +0 -1
- package/dist/esm/gridview/gridviewComponent.d.ts.map +0 -1
- package/dist/esm/gridview/gridviewComponent.js.map +0 -1
- package/dist/esm/gridview/gridviewPanel.d.ts.map +0 -1
- package/dist/esm/gridview/gridviewPanel.js.map +0 -1
- package/dist/esm/gridview/leafNode.d.ts.map +0 -1
- package/dist/esm/gridview/leafNode.js.map +0 -1
- package/dist/esm/gridview/options.d.ts.map +0 -1
- package/dist/esm/gridview/options.js.map +0 -1
- package/dist/esm/gridview/types.d.ts.map +0 -1
- package/dist/esm/gridview/types.js.map +0 -1
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/lifecycle.d.ts.map +0 -1
- package/dist/esm/lifecycle.js.map +0 -1
- package/dist/esm/math.d.ts.map +0 -1
- package/dist/esm/math.js.map +0 -1
- package/dist/esm/overlayRenderContainer.d.ts.map +0 -1
- package/dist/esm/overlayRenderContainer.js.map +0 -1
- package/dist/esm/panel/componentFactory.d.ts.map +0 -1
- package/dist/esm/panel/componentFactory.js.map +0 -1
- package/dist/esm/panel/types.d.ts.map +0 -1
- package/dist/esm/panel/types.js.map +0 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts.map +0 -1
- package/dist/esm/paneview/defaultPaneviewHeader.js.map +0 -1
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts.map +0 -1
- package/dist/esm/paneview/draggablePaneviewPanel.js.map +0 -1
- package/dist/esm/paneview/options.d.ts.map +0 -1
- package/dist/esm/paneview/options.js.map +0 -1
- package/dist/esm/paneview/paneview.d.ts.map +0 -1
- package/dist/esm/paneview/paneview.js.map +0 -1
- package/dist/esm/paneview/paneviewComponent.d.ts.map +0 -1
- package/dist/esm/paneview/paneviewComponent.js.map +0 -1
- package/dist/esm/paneview/paneviewPanel.d.ts.map +0 -1
- package/dist/esm/paneview/paneviewPanel.js.map +0 -1
- package/dist/esm/popoutWindow.d.ts.map +0 -1
- package/dist/esm/popoutWindow.js.map +0 -1
- package/dist/esm/resizable.d.ts.map +0 -1
- package/dist/esm/resizable.js.map +0 -1
- package/dist/esm/splitview/options.d.ts.map +0 -1
- package/dist/esm/splitview/options.js.map +0 -1
- package/dist/esm/splitview/splitview.d.ts.map +0 -1
- package/dist/esm/splitview/splitview.js.map +0 -1
- package/dist/esm/splitview/splitviewComponent.d.ts.map +0 -1
- package/dist/esm/splitview/splitviewComponent.js.map +0 -1
- package/dist/esm/splitview/splitviewPanel.d.ts.map +0 -1
- package/dist/esm/splitview/splitviewPanel.js.map +0 -1
- package/dist/esm/splitview/viewItem.d.ts.map +0 -1
- package/dist/esm/splitview/viewItem.js.map +0 -1
- package/dist/esm/svg.d.ts.map +0 -1
- package/dist/esm/svg.js.map +0 -1
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/types.js.map +0 -1
|
@@ -3,9 +3,8 @@ import { directionToPosition, Droptarget, } from '../dnd/droptarget';
|
|
|
3
3
|
import { tail, sequenceEquals, remove } from '../array';
|
|
4
4
|
import { DockviewPanel } from './dockviewPanel';
|
|
5
5
|
import { CompositeDisposable, Disposable } from '../lifecycle';
|
|
6
|
-
import { Event, Emitter } from '../events';
|
|
6
|
+
import { Event, Emitter, addDisposableWindowListener } from '../events';
|
|
7
7
|
import { Watermark } from './components/watermark/watermark';
|
|
8
|
-
import { DockviewDropTargets, } from './types';
|
|
9
8
|
import { sequentialNumberGenerator } from '../math';
|
|
10
9
|
import { DefaultDockviewDeserialzier } from './deserializer';
|
|
11
10
|
import { createComponent } from '../panel/componentFactory';
|
|
@@ -13,20 +12,35 @@ import { isGroupOptionsWithGroup, isGroupOptionsWithPanel, isPanelOptionsWithGro
|
|
|
13
12
|
import { BaseGrid, toTarget, } from '../gridview/baseComponentGridview';
|
|
14
13
|
import { DockviewApi } from '../api/component.api';
|
|
15
14
|
import { Orientation, Sizing } from '../splitview/splitview';
|
|
15
|
+
import { DockviewDidDropEvent, DockviewWillDropEvent, WillShowOverlayLocationEvent, } from './dockviewGroupPanelModel';
|
|
16
16
|
import { DockviewGroupPanel } from './dockviewGroupPanel';
|
|
17
17
|
import { DockviewPanelModel } from './dockviewPanelModel';
|
|
18
18
|
import { getPanelData } from '../dnd/dataTransfer';
|
|
19
19
|
import { Overlay } from '../dnd/overlay';
|
|
20
20
|
import { toggleClass, watchElementResize } from '../dom';
|
|
21
21
|
import { DockviewFloatingGroupPanel } from './dockviewFloatingGroupPanel';
|
|
22
|
-
import { DockviewPopoutGroupPanel } from './dockviewPopoutGroupPanel';
|
|
23
22
|
import { DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE, DEFAULT_FLOATING_GROUP_POSITION, } from '../constants';
|
|
24
23
|
import { OverlayRenderContainer, } from '../overlayRenderContainer';
|
|
24
|
+
import { PopoutWindow } from '../popoutWindow';
|
|
25
25
|
const DEFAULT_ROOT_OVERLAY_MODEL = {
|
|
26
26
|
activationSize: { type: 'pixels', value: 10 },
|
|
27
27
|
size: { type: 'pixels', value: 20 },
|
|
28
28
|
};
|
|
29
|
-
function
|
|
29
|
+
function moveGroupWithoutDestroying(options) {
|
|
30
|
+
const activePanel = options.from.activePanel;
|
|
31
|
+
const panels = [...options.from.panels].map((panel) => {
|
|
32
|
+
const removedPanel = options.from.model.removePanel(panel);
|
|
33
|
+
options.from.model.renderContainer.detatch(panel);
|
|
34
|
+
return removedPanel;
|
|
35
|
+
});
|
|
36
|
+
panels.forEach((panel) => {
|
|
37
|
+
options.to.model.openPanel(panel, {
|
|
38
|
+
skipSetActive: activePanel !== panel,
|
|
39
|
+
skipSetGroupActive: true,
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function getDockviewTheme(element) {
|
|
30
44
|
function toClassList(element) {
|
|
31
45
|
const list = [];
|
|
32
46
|
for (let i = 0; i < element.classList.length; i++) {
|
|
@@ -137,6 +151,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
137
151
|
styles: options.styles,
|
|
138
152
|
parentElement: options.parentElement,
|
|
139
153
|
disableAutoResizing: options.disableAutoResizing,
|
|
154
|
+
locked: options.locked,
|
|
140
155
|
});
|
|
141
156
|
this.nextGroupId = sequentialNumberGenerator();
|
|
142
157
|
this._deserializer = new DefaultDockviewDeserialzier(this);
|
|
@@ -147,6 +162,10 @@ export class DockviewComponent extends BaseGrid {
|
|
|
147
162
|
this.onWillDragGroup = this._onWillDragGroup.event;
|
|
148
163
|
this._onDidDrop = new Emitter();
|
|
149
164
|
this.onDidDrop = this._onDidDrop.event;
|
|
165
|
+
this._onWillDrop = new Emitter();
|
|
166
|
+
this.onWillDrop = this._onWillDrop.event;
|
|
167
|
+
this._onWillShowOverlay = new Emitter();
|
|
168
|
+
this.onWillShowOverlay = this._onWillShowOverlay.event;
|
|
150
169
|
this._onDidRemovePanel = new Emitter();
|
|
151
170
|
this.onDidRemovePanel = this._onDidRemovePanel.event;
|
|
152
171
|
this._onDidAddPanel = new Emitter();
|
|
@@ -155,15 +174,36 @@ export class DockviewComponent extends BaseGrid {
|
|
|
155
174
|
this.onDidLayoutFromJSON = this._onDidLayoutFromJSON.event;
|
|
156
175
|
this._onDidActivePanelChange = new Emitter();
|
|
157
176
|
this.onDidActivePanelChange = this._onDidActivePanelChange.event;
|
|
177
|
+
this._onDidMovePanel = new Emitter();
|
|
158
178
|
this._floatingGroups = [];
|
|
159
179
|
this._popoutGroups = [];
|
|
180
|
+
this._ignoreEvents = 0;
|
|
181
|
+
this._onDidRemoveGroup = new Emitter();
|
|
182
|
+
this.onDidRemoveGroup = this._onDidRemoveGroup.event;
|
|
183
|
+
this._onDidAddGroup = new Emitter();
|
|
184
|
+
this.onDidAddGroup = this._onDidAddGroup.event;
|
|
185
|
+
this._onDidActiveGroupChange = new Emitter();
|
|
186
|
+
this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
|
|
187
|
+
this._moving = false;
|
|
160
188
|
const gready = document.createElement('div');
|
|
161
189
|
gready.className = 'dv-overlay-render-container';
|
|
162
190
|
this.gridview.element.appendChild(gready);
|
|
163
191
|
this.overlayRenderContainer = new OverlayRenderContainer(gready);
|
|
164
192
|
toggleClass(this.gridview.element, 'dv-dockview', true);
|
|
165
193
|
toggleClass(this.element, 'dv-debug', !!options.debug);
|
|
166
|
-
this.addDisposables(this.overlayRenderContainer, this._onWillDragPanel, this._onWillDragGroup, this._onDidActivePanelChange, this._onDidAddPanel, this._onDidRemovePanel, this._onDidLayoutFromJSON, this._onDidDrop,
|
|
194
|
+
this.addDisposables(this.overlayRenderContainer, this._onWillDragPanel, this._onWillDragGroup, this._onWillShowOverlay, this._onDidActivePanelChange, this._onDidAddPanel, this._onDidRemovePanel, this._onDidLayoutFromJSON, this._onDidDrop, this._onWillDrop, this._onDidMovePanel, this._onDidAddGroup, this._onDidRemoveGroup, this._onDidActiveGroupChange, this.onDidAdd((event) => {
|
|
195
|
+
if (!this._moving) {
|
|
196
|
+
this._onDidAddGroup.fire(event);
|
|
197
|
+
}
|
|
198
|
+
}), this.onDidRemove((event) => {
|
|
199
|
+
if (!this._moving) {
|
|
200
|
+
this._onDidRemoveGroup.fire(event);
|
|
201
|
+
}
|
|
202
|
+
}), this.onDidActiveChange((event) => {
|
|
203
|
+
if (!this._moving) {
|
|
204
|
+
this._onDidActiveGroupChange.fire(event);
|
|
205
|
+
}
|
|
206
|
+
}), Event.any(this.onDidAdd, this.onDidRemove)(() => {
|
|
167
207
|
this.updateWatermark();
|
|
168
208
|
}), Event.any(this.onDidAddPanel, this.onDidRemovePanel, this.onDidActivePanelChange)(() => {
|
|
169
209
|
this._bufferOnDidLayoutChange.fire();
|
|
@@ -174,7 +214,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
174
214
|
}
|
|
175
215
|
// iterate over a copy of the array since .dispose() mutates the original array
|
|
176
216
|
for (const group of [...this._popoutGroups]) {
|
|
177
|
-
group.dispose();
|
|
217
|
+
group.disposable.dispose();
|
|
178
218
|
}
|
|
179
219
|
}));
|
|
180
220
|
this._options = options;
|
|
@@ -220,7 +260,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
220
260
|
return this.options.showDndOverlay({
|
|
221
261
|
nativeEvent: event,
|
|
222
262
|
position: position,
|
|
223
|
-
target:
|
|
263
|
+
target: 'edge',
|
|
224
264
|
getData: getPanelData,
|
|
225
265
|
});
|
|
226
266
|
}
|
|
@@ -229,88 +269,259 @@ export class DockviewComponent extends BaseGrid {
|
|
|
229
269
|
acceptedTargetZones: ['top', 'bottom', 'left', 'right', 'center'],
|
|
230
270
|
overlayModel: (_b = this.options.rootOverlayModel) !== null && _b !== void 0 ? _b : DEFAULT_ROOT_OVERLAY_MODEL,
|
|
231
271
|
});
|
|
232
|
-
this.addDisposables(this._rootDropTarget.
|
|
272
|
+
this.addDisposables(this._rootDropTarget, this._rootDropTarget.onWillShowOverlay((event) => {
|
|
273
|
+
if (this.gridview.length > 0 && event.position === 'center') {
|
|
274
|
+
// option only available when no panels in primary grid
|
|
275
|
+
return;
|
|
276
|
+
}
|
|
277
|
+
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
278
|
+
kind: 'edge',
|
|
279
|
+
}));
|
|
280
|
+
}), this._rootDropTarget.onDrop((event) => {
|
|
233
281
|
var _a;
|
|
282
|
+
const willDropEvent = new DockviewWillDropEvent({
|
|
283
|
+
nativeEvent: event.nativeEvent,
|
|
284
|
+
position: event.position,
|
|
285
|
+
panel: undefined,
|
|
286
|
+
api: this._api,
|
|
287
|
+
group: undefined,
|
|
288
|
+
getData: getPanelData,
|
|
289
|
+
kind: 'edge',
|
|
290
|
+
});
|
|
291
|
+
this._onWillDrop.fire(willDropEvent);
|
|
292
|
+
if (willDropEvent.defaultPrevented) {
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
234
295
|
const data = getPanelData();
|
|
235
296
|
if (data) {
|
|
236
|
-
this.moveGroupOrPanel(
|
|
297
|
+
this.moveGroupOrPanel({
|
|
298
|
+
from: {
|
|
299
|
+
groupId: data.groupId,
|
|
300
|
+
panelId: (_a = data.panelId) !== null && _a !== void 0 ? _a : undefined,
|
|
301
|
+
},
|
|
302
|
+
to: {
|
|
303
|
+
group: this.orthogonalize(event.position),
|
|
304
|
+
position: 'center',
|
|
305
|
+
},
|
|
306
|
+
});
|
|
237
307
|
}
|
|
238
308
|
else {
|
|
239
|
-
this._onDidDrop.fire(
|
|
309
|
+
this._onDidDrop.fire(new DockviewDidDropEvent({
|
|
310
|
+
nativeEvent: event.nativeEvent,
|
|
311
|
+
position: event.position,
|
|
312
|
+
panel: undefined,
|
|
313
|
+
api: this._api,
|
|
314
|
+
group: undefined,
|
|
315
|
+
getData: getPanelData,
|
|
316
|
+
}));
|
|
240
317
|
}
|
|
241
318
|
}), this._rootDropTarget);
|
|
242
319
|
this._api = new DockviewApi(this);
|
|
243
320
|
this.updateWatermark();
|
|
244
321
|
}
|
|
245
|
-
addPopoutGroup(
|
|
246
|
-
var _a;
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
group = this.createGroup();
|
|
251
|
-
this.removePanel(item, {
|
|
252
|
-
removeEmptyGroup: true,
|
|
253
|
-
skipDispose: true,
|
|
254
|
-
});
|
|
255
|
-
group.model.openPanel(item);
|
|
256
|
-
if (!box) {
|
|
257
|
-
box = this.element.getBoundingClientRect();
|
|
258
|
-
}
|
|
322
|
+
addPopoutGroup(itemToPopout, options) {
|
|
323
|
+
var _a, _b, _c;
|
|
324
|
+
if (itemToPopout instanceof DockviewPanel &&
|
|
325
|
+
itemToPopout.group.size === 1) {
|
|
326
|
+
return this.addPopoutGroup(itemToPopout.group);
|
|
259
327
|
}
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
328
|
+
const theme = getDockviewTheme(this.gridview.element);
|
|
329
|
+
const element = this.element;
|
|
330
|
+
function getBox() {
|
|
331
|
+
if (options === null || options === void 0 ? void 0 : options.position) {
|
|
332
|
+
return options.position;
|
|
264
333
|
}
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
334
|
+
if (itemToPopout instanceof DockviewGroupPanel) {
|
|
335
|
+
return itemToPopout.element.getBoundingClientRect();
|
|
336
|
+
}
|
|
337
|
+
if (itemToPopout.group) {
|
|
338
|
+
return itemToPopout.group.element.getBoundingClientRect();
|
|
269
339
|
}
|
|
340
|
+
return element.getBoundingClientRect();
|
|
270
341
|
}
|
|
271
|
-
const
|
|
272
|
-
const
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
342
|
+
const box = getBox();
|
|
343
|
+
const groupId = (_b = (_a = options === null || options === void 0 ? void 0 : options.overridePopoutGroup) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : this.getNextGroupId(); //item.id;
|
|
344
|
+
if (itemToPopout.api.location.type === 'grid') {
|
|
345
|
+
itemToPopout.api.setVisible(false);
|
|
346
|
+
}
|
|
347
|
+
const _window = new PopoutWindow(`${this.id}-${groupId}`, // unique id
|
|
348
|
+
theme !== null && theme !== void 0 ? theme : '', {
|
|
349
|
+
url: (_c = options === null || options === void 0 ? void 0 : options.popoutUrl) !== null && _c !== void 0 ? _c : '/popout.html',
|
|
350
|
+
left: window.screenX + box.left,
|
|
351
|
+
top: window.screenY + box.top,
|
|
352
|
+
width: box.width,
|
|
353
|
+
height: box.height,
|
|
354
|
+
onDidOpen: options === null || options === void 0 ? void 0 : options.onDidOpen,
|
|
355
|
+
onWillClose: options === null || options === void 0 ? void 0 : options.onWillClose,
|
|
282
356
|
});
|
|
283
|
-
|
|
284
|
-
dispose
|
|
285
|
-
remove(this._popoutGroups, popoutWindow);
|
|
286
|
-
this.updateWatermark();
|
|
287
|
-
},
|
|
288
|
-
}, popoutWindow.window.onDidClose(() => {
|
|
289
|
-
this.doAddGroup(group, [0]);
|
|
357
|
+
const popoutWindowDisposable = new CompositeDisposable(_window, _window.onDidClose(() => {
|
|
358
|
+
popoutWindowDisposable.dispose();
|
|
290
359
|
}));
|
|
291
|
-
|
|
292
|
-
|
|
360
|
+
return _window
|
|
361
|
+
.open()
|
|
362
|
+
.then((popoutContainer) => {
|
|
363
|
+
var _a;
|
|
364
|
+
if (_window.isDisposed) {
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
if (popoutContainer === null) {
|
|
368
|
+
popoutWindowDisposable.dispose();
|
|
369
|
+
return;
|
|
370
|
+
}
|
|
371
|
+
const gready = document.createElement('div');
|
|
372
|
+
gready.className = 'dv-overlay-render-container';
|
|
373
|
+
const overlayRenderContainer = new OverlayRenderContainer(gready);
|
|
374
|
+
const referenceGroup = itemToPopout instanceof DockviewPanel
|
|
375
|
+
? itemToPopout.group
|
|
376
|
+
: itemToPopout;
|
|
377
|
+
const referenceLocation = itemToPopout.api.location.type;
|
|
378
|
+
const group = (_a = options === null || options === void 0 ? void 0 : options.overridePopoutGroup) !== null && _a !== void 0 ? _a : this.createGroup({ id: groupId });
|
|
379
|
+
group.model.renderContainer = overlayRenderContainer;
|
|
380
|
+
if (!(options === null || options === void 0 ? void 0 : options.overridePopoutGroup)) {
|
|
381
|
+
this._onDidAddGroup.fire(group);
|
|
382
|
+
}
|
|
383
|
+
if (itemToPopout instanceof DockviewPanel) {
|
|
384
|
+
this.movingLock(() => {
|
|
385
|
+
const panel = referenceGroup.model.removePanel(itemToPopout);
|
|
386
|
+
group.model.openPanel(panel);
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
this.movingLock(() => moveGroupWithoutDestroying({
|
|
391
|
+
from: referenceGroup,
|
|
392
|
+
to: group,
|
|
393
|
+
}));
|
|
394
|
+
switch (referenceLocation) {
|
|
395
|
+
case 'grid':
|
|
396
|
+
referenceGroup.api.setVisible(false);
|
|
397
|
+
break;
|
|
398
|
+
case 'floating':
|
|
399
|
+
case 'popout':
|
|
400
|
+
this.removeGroup(referenceGroup);
|
|
401
|
+
break;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
popoutContainer.classList.add('dv-dockview');
|
|
405
|
+
popoutContainer.style.overflow = 'hidden';
|
|
406
|
+
popoutContainer.appendChild(gready);
|
|
407
|
+
popoutContainer.appendChild(group.element);
|
|
408
|
+
group.model.location = {
|
|
409
|
+
type: 'popout',
|
|
410
|
+
getWindow: () => _window.window,
|
|
411
|
+
};
|
|
412
|
+
this.doSetGroupAndPanelActive(group);
|
|
413
|
+
popoutWindowDisposable.addDisposables(group.api.onDidActiveChange((event) => {
|
|
414
|
+
var _a;
|
|
415
|
+
if (event.isActive) {
|
|
416
|
+
(_a = _window.window) === null || _a === void 0 ? void 0 : _a.focus();
|
|
417
|
+
}
|
|
418
|
+
}), group.api.onWillFocus(() => {
|
|
419
|
+
var _a;
|
|
420
|
+
(_a = _window.window) === null || _a === void 0 ? void 0 : _a.focus();
|
|
421
|
+
}));
|
|
422
|
+
let returnedGroup;
|
|
423
|
+
const value = {
|
|
424
|
+
window: _window,
|
|
425
|
+
popoutGroup: group,
|
|
426
|
+
referenceGroup: this.getPanel(referenceGroup.id)
|
|
427
|
+
? referenceGroup.id
|
|
428
|
+
: undefined,
|
|
429
|
+
disposable: {
|
|
430
|
+
dispose: () => {
|
|
431
|
+
popoutWindowDisposable.dispose();
|
|
432
|
+
return returnedGroup;
|
|
433
|
+
},
|
|
434
|
+
},
|
|
435
|
+
};
|
|
436
|
+
popoutWindowDisposable.addDisposables(
|
|
437
|
+
/**
|
|
438
|
+
* ResizeObserver seems slow here, I do not know why but we don't need it
|
|
439
|
+
* since we can reply on the window resize event as we will occupy the full
|
|
440
|
+
* window dimensions
|
|
441
|
+
*/
|
|
442
|
+
addDisposableWindowListener(_window.window, 'resize', () => {
|
|
443
|
+
group.layout(window.innerWidth, window.innerHeight);
|
|
444
|
+
}), overlayRenderContainer, Disposable.from(() => {
|
|
445
|
+
if (this.getPanel(referenceGroup.id)) {
|
|
446
|
+
this.movingLock(() => moveGroupWithoutDestroying({
|
|
447
|
+
from: group,
|
|
448
|
+
to: referenceGroup,
|
|
449
|
+
}));
|
|
450
|
+
if (!referenceGroup.api.isVisible) {
|
|
451
|
+
referenceGroup.api.setVisible(true);
|
|
452
|
+
}
|
|
453
|
+
if (this.getPanel(group.id)) {
|
|
454
|
+
this.doRemoveGroup(group, {
|
|
455
|
+
skipPopoutAssociated: true,
|
|
456
|
+
});
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
else {
|
|
460
|
+
if (this.getPanel(group.id)) {
|
|
461
|
+
const removedGroup = this.doRemoveGroup(group, {
|
|
462
|
+
skipDispose: true,
|
|
463
|
+
skipActive: true,
|
|
464
|
+
});
|
|
465
|
+
removedGroup.model.renderContainer =
|
|
466
|
+
this.overlayRenderContainer;
|
|
467
|
+
removedGroup.model.location = { type: 'grid' };
|
|
468
|
+
returnedGroup = removedGroup;
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
}));
|
|
472
|
+
this._popoutGroups.push(value);
|
|
473
|
+
this.updateWatermark();
|
|
474
|
+
})
|
|
475
|
+
.catch((err) => {
|
|
476
|
+
console.error(err);
|
|
477
|
+
});
|
|
293
478
|
}
|
|
294
479
|
addFloatingGroup(item, coord, options) {
|
|
295
|
-
var _a, _b, _c, _d, _e, _f;
|
|
480
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
296
481
|
let group;
|
|
297
482
|
if (item instanceof DockviewPanel) {
|
|
298
483
|
group = this.createGroup();
|
|
299
|
-
this.
|
|
484
|
+
this._onDidAddGroup.fire(group);
|
|
485
|
+
this.movingLock(() => this.removePanel(item, {
|
|
300
486
|
removeEmptyGroup: true,
|
|
301
487
|
skipDispose: true,
|
|
302
|
-
|
|
303
|
-
|
|
488
|
+
skipSetActiveGroup: true,
|
|
489
|
+
}));
|
|
490
|
+
group.model.openPanel(item, { skipSetGroupActive: true });
|
|
304
491
|
}
|
|
305
492
|
else {
|
|
306
493
|
group = item;
|
|
494
|
+
const popoutReferenceGroupId = (_a = this._popoutGroups.find((_) => _.popoutGroup === group)) === null || _a === void 0 ? void 0 : _a.referenceGroup;
|
|
495
|
+
const popoutReferenceGroup = popoutReferenceGroupId
|
|
496
|
+
? this.getPanel(popoutReferenceGroupId)
|
|
497
|
+
: undefined;
|
|
307
498
|
const skip = typeof (options === null || options === void 0 ? void 0 : options.skipRemoveGroup) === 'boolean' &&
|
|
308
499
|
options.skipRemoveGroup;
|
|
309
500
|
if (!skip) {
|
|
310
|
-
|
|
501
|
+
if (popoutReferenceGroup) {
|
|
502
|
+
this.movingLock(() => moveGroupWithoutDestroying({
|
|
503
|
+
from: item,
|
|
504
|
+
to: popoutReferenceGroup,
|
|
505
|
+
}));
|
|
506
|
+
this.doRemoveGroup(item, {
|
|
507
|
+
skipPopoutReturn: true,
|
|
508
|
+
skipPopoutAssociated: true,
|
|
509
|
+
});
|
|
510
|
+
this.doRemoveGroup(popoutReferenceGroup, {
|
|
511
|
+
skipDispose: true,
|
|
512
|
+
});
|
|
513
|
+
group = popoutReferenceGroup;
|
|
514
|
+
}
|
|
515
|
+
else {
|
|
516
|
+
this.doRemoveGroup(item, {
|
|
517
|
+
skipDispose: true,
|
|
518
|
+
skipPopoutReturn: true,
|
|
519
|
+
skipPopoutAssociated: !!popoutReferenceGroup,
|
|
520
|
+
});
|
|
521
|
+
}
|
|
311
522
|
}
|
|
312
523
|
}
|
|
313
|
-
group.model.location = 'floating';
|
|
524
|
+
group.model.location = { type: 'floating' };
|
|
314
525
|
const overlayLeft = typeof (coord === null || coord === void 0 ? void 0 : coord.x) === 'number'
|
|
315
526
|
? Math.max(coord.x, 0)
|
|
316
527
|
: DEFAULT_FLOATING_GROUP_POSITION.left;
|
|
@@ -320,16 +531,16 @@ export class DockviewComponent extends BaseGrid {
|
|
|
320
531
|
const overlay = new Overlay({
|
|
321
532
|
container: this.gridview.element,
|
|
322
533
|
content: group.element,
|
|
323
|
-
height: (
|
|
324
|
-
width: (
|
|
534
|
+
height: (_b = coord === null || coord === void 0 ? void 0 : coord.height) !== null && _b !== void 0 ? _b : 300,
|
|
535
|
+
width: (_c = coord === null || coord === void 0 ? void 0 : coord.width) !== null && _c !== void 0 ? _c : 300,
|
|
325
536
|
left: overlayLeft,
|
|
326
537
|
top: overlayTop,
|
|
327
538
|
minimumInViewportWidth: this.options.floatingGroupBounds === 'boundedWithinViewport'
|
|
328
539
|
? undefined
|
|
329
|
-
: (
|
|
540
|
+
: (_e = (_d = this.options.floatingGroupBounds) === null || _d === void 0 ? void 0 : _d.minimumWidthWithinViewport) !== null && _e !== void 0 ? _e : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
330
541
|
minimumInViewportHeight: this.options.floatingGroupBounds === 'boundedWithinViewport'
|
|
331
542
|
? undefined
|
|
332
|
-
: (
|
|
543
|
+
: (_g = (_f = this.options.floatingGroupBounds) === null || _f === void 0 ? void 0 : _f.minimumHeightWithinViewport) !== null && _g !== void 0 ? _g : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
333
544
|
});
|
|
334
545
|
const el = group.element.querySelector('.void-container');
|
|
335
546
|
if (!el) {
|
|
@@ -360,12 +571,15 @@ export class DockviewComponent extends BaseGrid {
|
|
|
360
571
|
}), {
|
|
361
572
|
dispose: () => {
|
|
362
573
|
disposable.dispose();
|
|
363
|
-
group.model.location = 'grid';
|
|
574
|
+
group.model.location = { type: 'grid' };
|
|
364
575
|
remove(this._floatingGroups, floatingGroupPanel);
|
|
365
576
|
this.updateWatermark();
|
|
366
577
|
},
|
|
367
578
|
});
|
|
368
579
|
this._floatingGroups.push(floatingGroupPanel);
|
|
580
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipActiveGroup)) {
|
|
581
|
+
this.doSetGroupAndPanelActive(group);
|
|
582
|
+
}
|
|
369
583
|
this.updateWatermark();
|
|
370
584
|
}
|
|
371
585
|
orthogonalize(position) {
|
|
@@ -457,8 +671,8 @@ export class DockviewComponent extends BaseGrid {
|
|
|
457
671
|
return this.panels.find((panel) => panel.id === id);
|
|
458
672
|
}
|
|
459
673
|
setActivePanel(panel) {
|
|
460
|
-
this.doSetGroupActive(panel.group);
|
|
461
674
|
panel.group.model.openPanel(panel);
|
|
675
|
+
this.doSetGroupAndPanelActive(panel.group);
|
|
462
676
|
}
|
|
463
677
|
moveToNext(options = {}) {
|
|
464
678
|
var _a;
|
|
@@ -519,7 +733,8 @@ export class DockviewComponent extends BaseGrid {
|
|
|
519
733
|
});
|
|
520
734
|
const popoutGroups = this._popoutGroups.map((group) => {
|
|
521
735
|
return {
|
|
522
|
-
data: group.
|
|
736
|
+
data: group.popoutGroup.toJSON(),
|
|
737
|
+
gridReferenceGroup: group.referenceGroup,
|
|
523
738
|
position: group.window.dimensions(),
|
|
524
739
|
};
|
|
525
740
|
});
|
|
@@ -537,7 +752,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
537
752
|
return result;
|
|
538
753
|
}
|
|
539
754
|
fromJSON(data) {
|
|
540
|
-
var _a, _b;
|
|
755
|
+
var _a, _b, _c;
|
|
541
756
|
this.clear();
|
|
542
757
|
if (typeof data !== 'object' || data === null) {
|
|
543
758
|
throw new Error('serialized layout must be a non-null object');
|
|
@@ -576,7 +791,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
576
791
|
const isActive = typeof activeView === 'string' &&
|
|
577
792
|
activeView === panel.id;
|
|
578
793
|
group.model.openPanel(panel, {
|
|
579
|
-
|
|
794
|
+
skipSetActive: !isActive,
|
|
580
795
|
skipSetGroupActive: true,
|
|
581
796
|
});
|
|
582
797
|
}
|
|
@@ -606,11 +821,16 @@ export class DockviewComponent extends BaseGrid {
|
|
|
606
821
|
}
|
|
607
822
|
const serializedPopoutGroups = (_b = data.popoutGroups) !== null && _b !== void 0 ? _b : [];
|
|
608
823
|
for (const serializedPopoutGroup of serializedPopoutGroups) {
|
|
609
|
-
const { data, position } = serializedPopoutGroup;
|
|
824
|
+
const { data, position, gridReferenceGroup } = serializedPopoutGroup;
|
|
610
825
|
const group = createGroupFromSerializedState(data);
|
|
611
|
-
this.addPopoutGroup(
|
|
826
|
+
this.addPopoutGroup((_c = (gridReferenceGroup
|
|
827
|
+
? this.getPanel(gridReferenceGroup)
|
|
828
|
+
: undefined)) !== null && _c !== void 0 ? _c : group, {
|
|
612
829
|
skipRemoveGroup: true,
|
|
613
830
|
position: position !== null && position !== void 0 ? position : undefined,
|
|
831
|
+
overridePopoutGroup: gridReferenceGroup
|
|
832
|
+
? group
|
|
833
|
+
: undefined,
|
|
614
834
|
});
|
|
615
835
|
}
|
|
616
836
|
for (const floatingGroup of this._floatingGroups) {
|
|
@@ -657,6 +877,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
657
877
|
*/
|
|
658
878
|
throw err;
|
|
659
879
|
}
|
|
880
|
+
this.updateWatermark();
|
|
660
881
|
this._onDidLayoutFromJSON.fire();
|
|
661
882
|
}
|
|
662
883
|
clear() {
|
|
@@ -670,9 +891,6 @@ export class DockviewComponent extends BaseGrid {
|
|
|
670
891
|
if (hasActiveGroup) {
|
|
671
892
|
this.doSetGroupAndPanelActive(undefined);
|
|
672
893
|
}
|
|
673
|
-
if (hasActivePanel) {
|
|
674
|
-
this._onDidActivePanelChange.fire(undefined);
|
|
675
|
-
}
|
|
676
894
|
this.gridview.clear();
|
|
677
895
|
}
|
|
678
896
|
closeAllGroups() {
|
|
@@ -713,6 +931,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
713
931
|
const group = this.orthogonalize(directionToPosition(options.position.direction));
|
|
714
932
|
const panel = this.createPanel(options, group);
|
|
715
933
|
group.model.openPanel(panel);
|
|
934
|
+
this.doSetGroupAndPanelActive(group);
|
|
716
935
|
return panel;
|
|
717
936
|
}
|
|
718
937
|
}
|
|
@@ -724,6 +943,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
724
943
|
const target = toTarget(((_b = options.position) === null || _b === void 0 ? void 0 : _b.direction) || 'within');
|
|
725
944
|
if (options.floating) {
|
|
726
945
|
const group = this.createGroup();
|
|
946
|
+
this._onDidAddGroup.fire(group);
|
|
727
947
|
const o = typeof options.floating === 'object' &&
|
|
728
948
|
options.floating !== null
|
|
729
949
|
? options.floating
|
|
@@ -731,16 +951,16 @@ export class DockviewComponent extends BaseGrid {
|
|
|
731
951
|
this.addFloatingGroup(group, o, {
|
|
732
952
|
inDragMode: false,
|
|
733
953
|
skipRemoveGroup: true,
|
|
954
|
+
skipActiveGroup: true,
|
|
734
955
|
});
|
|
735
|
-
this._onDidAddGroup.fire(group);
|
|
736
956
|
panel = this.createPanel(options, group);
|
|
737
957
|
group.model.openPanel(panel);
|
|
738
|
-
this.doSetGroupAndPanelActive(group);
|
|
739
958
|
}
|
|
740
|
-
else if (referenceGroup.api.location === 'floating' ||
|
|
959
|
+
else if (referenceGroup.api.location.type === 'floating' ||
|
|
741
960
|
target === 'center') {
|
|
742
961
|
panel = this.createPanel(options, referenceGroup);
|
|
743
962
|
referenceGroup.model.openPanel(panel);
|
|
963
|
+
this.doSetGroupAndPanelActive(referenceGroup);
|
|
744
964
|
}
|
|
745
965
|
else {
|
|
746
966
|
const location = getGridLocation(referenceGroup.element);
|
|
@@ -748,10 +968,12 @@ export class DockviewComponent extends BaseGrid {
|
|
|
748
968
|
const group = this.createGroupAtLocation(relativeLocation);
|
|
749
969
|
panel = this.createPanel(options, group);
|
|
750
970
|
group.model.openPanel(panel);
|
|
971
|
+
this.doSetGroupAndPanelActive(group);
|
|
751
972
|
}
|
|
752
973
|
}
|
|
753
974
|
else if (options.floating) {
|
|
754
975
|
const group = this.createGroup();
|
|
976
|
+
this._onDidAddGroup.fire(group);
|
|
755
977
|
const o = typeof options.floating === 'object' &&
|
|
756
978
|
options.floating !== null
|
|
757
979
|
? options.floating
|
|
@@ -759,16 +981,16 @@ export class DockviewComponent extends BaseGrid {
|
|
|
759
981
|
this.addFloatingGroup(group, o, {
|
|
760
982
|
inDragMode: false,
|
|
761
983
|
skipRemoveGroup: true,
|
|
984
|
+
skipActiveGroup: true,
|
|
762
985
|
});
|
|
763
|
-
this._onDidAddGroup.fire(group);
|
|
764
986
|
panel = this.createPanel(options, group);
|
|
765
987
|
group.model.openPanel(panel);
|
|
766
|
-
this.doSetGroupAndPanelActive(group);
|
|
767
988
|
}
|
|
768
989
|
else {
|
|
769
990
|
const group = this.createGroupAtLocation();
|
|
770
991
|
panel = this.createPanel(options, group);
|
|
771
992
|
group.model.openPanel(panel);
|
|
993
|
+
this.doSetGroupAndPanelActive(group);
|
|
772
994
|
}
|
|
773
995
|
return panel;
|
|
774
996
|
}
|
|
@@ -780,13 +1002,15 @@ export class DockviewComponent extends BaseGrid {
|
|
|
780
1002
|
if (!group) {
|
|
781
1003
|
throw new Error(`cannot remove panel ${panel.id}. it's missing a group.`);
|
|
782
1004
|
}
|
|
783
|
-
group.model.removePanel(panel
|
|
1005
|
+
group.model.removePanel(panel, {
|
|
1006
|
+
skipSetActiveGroup: options.skipSetActiveGroup,
|
|
1007
|
+
});
|
|
784
1008
|
if (!options.skipDispose) {
|
|
785
|
-
|
|
1009
|
+
panel.group.model.renderContainer.detatch(panel);
|
|
786
1010
|
panel.dispose();
|
|
787
1011
|
}
|
|
788
1012
|
if (group.size === 0 && options.removeEmptyGroup) {
|
|
789
|
-
this.removeGroup(group);
|
|
1013
|
+
this.removeGroup(group, { skipActive: options.skipSetActiveGroup });
|
|
790
1014
|
}
|
|
791
1015
|
}
|
|
792
1016
|
createWatermarkComponent() {
|
|
@@ -799,7 +1023,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
799
1023
|
}
|
|
800
1024
|
updateWatermark() {
|
|
801
1025
|
var _a, _b;
|
|
802
|
-
if (this.groups.filter((x) => x.api.location === 'grid').length === 0) {
|
|
1026
|
+
if (this.groups.filter((x) => x.api.location.type === 'grid' && x.api.isVisible).length === 0) {
|
|
803
1027
|
if (!this.watermark) {
|
|
804
1028
|
this.watermark = this.createWatermarkComponent();
|
|
805
1029
|
this.watermark.init({
|
|
@@ -845,36 +1069,42 @@ export class DockviewComponent extends BaseGrid {
|
|
|
845
1069
|
}
|
|
846
1070
|
else {
|
|
847
1071
|
const group = this.orthogonalize(directionToPosition(options.direction));
|
|
1072
|
+
if (!options.skipSetActive) {
|
|
1073
|
+
this.doSetGroupAndPanelActive(group);
|
|
1074
|
+
}
|
|
848
1075
|
return group;
|
|
849
1076
|
}
|
|
850
1077
|
const target = toTarget(options.direction || 'within');
|
|
851
1078
|
const location = getGridLocation(referenceGroup.element);
|
|
852
1079
|
const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
|
|
853
1080
|
this.doAddGroup(group, relativeLocation);
|
|
1081
|
+
if (!options.skipSetActive) {
|
|
1082
|
+
this.doSetGroupAndPanelActive(group);
|
|
1083
|
+
}
|
|
854
1084
|
return group;
|
|
855
1085
|
}
|
|
856
1086
|
else {
|
|
857
1087
|
this.doAddGroup(group);
|
|
1088
|
+
this.doSetGroupAndPanelActive(group);
|
|
858
1089
|
return group;
|
|
859
1090
|
}
|
|
860
1091
|
}
|
|
861
1092
|
removeGroup(group, options) {
|
|
1093
|
+
this.doRemoveGroup(group, options);
|
|
1094
|
+
}
|
|
1095
|
+
doRemoveGroup(group, options) {
|
|
862
1096
|
var _a;
|
|
863
1097
|
const panels = [...group.panels]; // reassign since group panels will mutate
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
1098
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
1099
|
+
for (const panel of panels) {
|
|
1100
|
+
this.removePanel(panel, {
|
|
1101
|
+
removeEmptyGroup: false,
|
|
1102
|
+
skipDispose: (_a = options === null || options === void 0 ? void 0 : options.skipDispose) !== null && _a !== void 0 ? _a : false,
|
|
1103
|
+
});
|
|
1104
|
+
}
|
|
869
1105
|
}
|
|
870
1106
|
const activePanel = this.activePanel;
|
|
871
|
-
|
|
872
|
-
if (this.activePanel !== activePanel) {
|
|
873
|
-
this._onDidActivePanelChange.fire(this.activePanel);
|
|
874
|
-
}
|
|
875
|
-
}
|
|
876
|
-
doRemoveGroup(group, options) {
|
|
877
|
-
if (group.api.location === 'floating') {
|
|
1107
|
+
if (group.api.location.type === 'floating') {
|
|
878
1108
|
const floatingGroup = this._floatingGroups.find((_) => _.group === group);
|
|
879
1109
|
if (floatingGroup) {
|
|
880
1110
|
if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
@@ -886,60 +1116,124 @@ export class DockviewComponent extends BaseGrid {
|
|
|
886
1116
|
floatingGroup.dispose();
|
|
887
1117
|
if (!(options === null || options === void 0 ? void 0 : options.skipActive) && this._activeGroup === group) {
|
|
888
1118
|
const groups = Array.from(this._groups.values());
|
|
889
|
-
this.
|
|
1119
|
+
this.doSetGroupAndPanelActive(groups.length > 0 ? groups[0].value : undefined);
|
|
890
1120
|
}
|
|
891
1121
|
return floatingGroup.group;
|
|
892
1122
|
}
|
|
893
1123
|
throw new Error('failed to find floating group');
|
|
894
1124
|
}
|
|
895
|
-
if (group.api.location === 'popout') {
|
|
896
|
-
const selectedGroup = this._popoutGroups.find((_) => _.
|
|
1125
|
+
if (group.api.location.type === 'popout') {
|
|
1126
|
+
const selectedGroup = this._popoutGroups.find((_) => _.popoutGroup === group);
|
|
897
1127
|
if (selectedGroup) {
|
|
898
1128
|
if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
899
|
-
|
|
1129
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipPopoutAssociated)) {
|
|
1130
|
+
const refGroup = selectedGroup.referenceGroup
|
|
1131
|
+
? this.getPanel(selectedGroup.referenceGroup)
|
|
1132
|
+
: undefined;
|
|
1133
|
+
if (refGroup) {
|
|
1134
|
+
this.removeGroup(refGroup);
|
|
1135
|
+
}
|
|
1136
|
+
}
|
|
1137
|
+
selectedGroup.popoutGroup.dispose();
|
|
900
1138
|
this._groups.delete(group.id);
|
|
901
1139
|
this._onDidRemoveGroup.fire(group);
|
|
902
1140
|
}
|
|
903
|
-
selectedGroup.dispose();
|
|
1141
|
+
const removedGroup = selectedGroup.disposable.dispose();
|
|
1142
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipPopoutReturn) && removedGroup) {
|
|
1143
|
+
this.doAddGroup(removedGroup, [0]);
|
|
1144
|
+
this.doSetGroupAndPanelActive(removedGroup);
|
|
1145
|
+
}
|
|
904
1146
|
if (!(options === null || options === void 0 ? void 0 : options.skipActive) && this._activeGroup === group) {
|
|
905
1147
|
const groups = Array.from(this._groups.values());
|
|
906
|
-
this.
|
|
1148
|
+
this.doSetGroupAndPanelActive(groups.length > 0 ? groups[0].value : undefined);
|
|
907
1149
|
}
|
|
908
|
-
|
|
1150
|
+
this.updateWatermark();
|
|
1151
|
+
return selectedGroup.popoutGroup;
|
|
909
1152
|
}
|
|
910
1153
|
throw new Error('failed to find popout group');
|
|
911
1154
|
}
|
|
912
|
-
|
|
1155
|
+
const re = super.doRemoveGroup(group, options);
|
|
1156
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipActive)) {
|
|
1157
|
+
if (this.activePanel !== activePanel) {
|
|
1158
|
+
this._onDidActivePanelChange.fire(this.activePanel);
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
return re;
|
|
913
1162
|
}
|
|
914
|
-
|
|
915
|
-
|
|
1163
|
+
movingLock(func) {
|
|
1164
|
+
const isMoving = this._moving;
|
|
1165
|
+
try {
|
|
1166
|
+
this._moving = true;
|
|
1167
|
+
return func();
|
|
1168
|
+
}
|
|
1169
|
+
finally {
|
|
1170
|
+
this._moving = isMoving;
|
|
1171
|
+
}
|
|
1172
|
+
}
|
|
1173
|
+
moveGroupOrPanel(options) {
|
|
1174
|
+
var _a;
|
|
1175
|
+
const destinationGroup = options.to.group;
|
|
1176
|
+
const sourceGroupId = options.from.groupId;
|
|
1177
|
+
const sourceItemId = options.from.panelId;
|
|
1178
|
+
const destinationTarget = options.to.position;
|
|
1179
|
+
const destinationIndex = options.to.index;
|
|
916
1180
|
const sourceGroup = sourceGroupId
|
|
917
1181
|
? (_a = this._groups.get(sourceGroupId)) === null || _a === void 0 ? void 0 : _a.value
|
|
918
1182
|
: undefined;
|
|
1183
|
+
if (!sourceGroup) {
|
|
1184
|
+
throw new Error(`Failed to find group id ${sourceGroupId}`);
|
|
1185
|
+
}
|
|
919
1186
|
if (sourceItemId === undefined) {
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
1187
|
+
/**
|
|
1188
|
+
* Moving an entire group into another group
|
|
1189
|
+
*/
|
|
1190
|
+
this.moveGroup({
|
|
1191
|
+
from: { group: sourceGroup },
|
|
1192
|
+
to: {
|
|
1193
|
+
group: destinationGroup,
|
|
1194
|
+
position: destinationTarget,
|
|
1195
|
+
},
|
|
1196
|
+
});
|
|
923
1197
|
return;
|
|
924
1198
|
}
|
|
925
1199
|
if (!destinationTarget || destinationTarget === 'center') {
|
|
926
|
-
|
|
927
|
-
|
|
1200
|
+
/**
|
|
1201
|
+
* Dropping a panel within another group
|
|
1202
|
+
*/
|
|
1203
|
+
const removedPanel = this.movingLock(() => sourceGroup.model.removePanel(sourceItemId, {
|
|
1204
|
+
skipSetActive: false,
|
|
1205
|
+
skipSetActiveGroup: true,
|
|
1206
|
+
}));
|
|
1207
|
+
if (!removedPanel) {
|
|
928
1208
|
throw new Error(`No panel with id ${sourceItemId}`);
|
|
929
1209
|
}
|
|
930
|
-
if (
|
|
931
|
-
|
|
1210
|
+
if (sourceGroup.model.size === 0) {
|
|
1211
|
+
// remove the group and do not set a new group as active
|
|
1212
|
+
this.doRemoveGroup(sourceGroup, { skipActive: true });
|
|
932
1213
|
}
|
|
933
|
-
destinationGroup.model.openPanel(
|
|
1214
|
+
this.movingLock(() => destinationGroup.model.openPanel(removedPanel, {
|
|
934
1215
|
index: destinationIndex,
|
|
1216
|
+
skipSetGroupActive: true,
|
|
1217
|
+
}));
|
|
1218
|
+
this.doSetGroupAndPanelActive(destinationGroup);
|
|
1219
|
+
this._onDidMovePanel.fire({
|
|
1220
|
+
panel: removedPanel,
|
|
935
1221
|
});
|
|
936
1222
|
}
|
|
937
1223
|
else {
|
|
1224
|
+
/**
|
|
1225
|
+
* Dropping a panel to the extremities of a group which will place that panel
|
|
1226
|
+
* into an adjacent group
|
|
1227
|
+
*/
|
|
938
1228
|
const referenceLocation = getGridLocation(destinationGroup.element);
|
|
939
1229
|
const targetLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, destinationTarget);
|
|
940
|
-
if (sourceGroup
|
|
1230
|
+
if (sourceGroup.size < 2) {
|
|
1231
|
+
/**
|
|
1232
|
+
* If we are moving from a group which only has one panel left we will consider
|
|
1233
|
+
* moving the group itself rather than moving the panel into a newly created group
|
|
1234
|
+
*/
|
|
941
1235
|
const [targetParentLocation, to] = tail(targetLocation);
|
|
942
|
-
if (sourceGroup.api.location === 'grid') {
|
|
1236
|
+
if (sourceGroup.api.location.type === 'grid') {
|
|
943
1237
|
const sourceLocation = getGridLocation(sourceGroup.element);
|
|
944
1238
|
const [sourceParentLocation, from] = tail(sourceLocation);
|
|
945
1239
|
if (sequenceEquals(sourceParentLocation, targetParentLocation)) {
|
|
@@ -947,78 +1241,123 @@ export class DockviewComponent extends BaseGrid {
|
|
|
947
1241
|
// if a group has one tab - we are essentially moving the 'group'
|
|
948
1242
|
// which is equivalent to swapping two views in this case
|
|
949
1243
|
this.gridview.moveView(sourceParentLocation, from, to);
|
|
1244
|
+
return;
|
|
950
1245
|
}
|
|
951
1246
|
}
|
|
952
1247
|
// source group will become empty so delete the group
|
|
953
|
-
const targetGroup = this.doRemoveGroup(sourceGroup, {
|
|
1248
|
+
const targetGroup = this.movingLock(() => this.doRemoveGroup(sourceGroup, {
|
|
954
1249
|
skipActive: true,
|
|
955
1250
|
skipDispose: true,
|
|
956
|
-
});
|
|
1251
|
+
}));
|
|
957
1252
|
// after deleting the group we need to re-evaulate the ref location
|
|
958
1253
|
const updatedReferenceLocation = getGridLocation(destinationGroup.element);
|
|
959
1254
|
const location = getRelativeLocation(this.gridview.orientation, updatedReferenceLocation, destinationTarget);
|
|
960
|
-
this.doAddGroup(targetGroup, location);
|
|
1255
|
+
this.movingLock(() => this.doAddGroup(targetGroup, location));
|
|
1256
|
+
this.doSetGroupAndPanelActive(targetGroup);
|
|
961
1257
|
}
|
|
962
1258
|
else {
|
|
963
|
-
|
|
964
|
-
|
|
1259
|
+
/**
|
|
1260
|
+
* The group we are removing from has many panels, we need to remove the panels we are moving,
|
|
1261
|
+
* create a new group, add the panels to that new group and add the new group in an appropiate position
|
|
1262
|
+
*/
|
|
1263
|
+
const removedPanel = this.movingLock(() => sourceGroup.model.removePanel(sourceItemId, {
|
|
1264
|
+
skipSetActive: false,
|
|
1265
|
+
skipSetActiveGroup: true,
|
|
1266
|
+
}));
|
|
1267
|
+
if (!removedPanel) {
|
|
965
1268
|
throw new Error(`No panel with id ${sourceItemId}`);
|
|
966
1269
|
}
|
|
967
1270
|
const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, destinationTarget);
|
|
968
1271
|
const group = this.createGroupAtLocation(dropLocation);
|
|
969
|
-
group.model.openPanel(
|
|
1272
|
+
this.movingLock(() => group.model.openPanel(removedPanel, {
|
|
1273
|
+
skipSetGroupActive: true,
|
|
1274
|
+
}));
|
|
1275
|
+
this.doSetGroupAndPanelActive(group);
|
|
970
1276
|
}
|
|
971
1277
|
}
|
|
972
1278
|
}
|
|
973
|
-
moveGroup(
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
1279
|
+
moveGroup(options) {
|
|
1280
|
+
const from = options.from.group;
|
|
1281
|
+
const to = options.to.group;
|
|
1282
|
+
const target = options.to.position;
|
|
1283
|
+
if (target === 'center') {
|
|
1284
|
+
const activePanel = from.activePanel;
|
|
1285
|
+
const panels = this.movingLock(() => [...from.panels].map((p) => from.model.removePanel(p.id, {
|
|
1286
|
+
skipSetActive: true,
|
|
1287
|
+
})));
|
|
1288
|
+
if ((from === null || from === void 0 ? void 0 : from.model.size) === 0) {
|
|
1289
|
+
this.doRemoveGroup(from, { skipActive: true });
|
|
1290
|
+
}
|
|
1291
|
+
this.movingLock(() => {
|
|
981
1292
|
for (const panel of panels) {
|
|
982
|
-
|
|
983
|
-
|
|
1293
|
+
to.model.openPanel(panel, {
|
|
1294
|
+
skipSetActive: panel !== activePanel,
|
|
1295
|
+
skipSetGroupActive: true,
|
|
984
1296
|
});
|
|
985
1297
|
}
|
|
986
|
-
}
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
1298
|
+
});
|
|
1299
|
+
this.doSetGroupAndPanelActive(to);
|
|
1300
|
+
panels.forEach((panel) => {
|
|
1301
|
+
this._onDidMovePanel.fire({ panel });
|
|
1302
|
+
});
|
|
1303
|
+
}
|
|
1304
|
+
else {
|
|
1305
|
+
switch (from.api.location.type) {
|
|
1306
|
+
case 'grid':
|
|
1307
|
+
this.gridview.removeView(getGridLocation(from.element));
|
|
1308
|
+
break;
|
|
1309
|
+
case 'floating': {
|
|
1310
|
+
const selectedFloatingGroup = this._floatingGroups.find((x) => x.group === from);
|
|
1311
|
+
if (!selectedFloatingGroup) {
|
|
1312
|
+
throw new Error('failed to find floating group');
|
|
999
1313
|
}
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1314
|
+
selectedFloatingGroup.dispose();
|
|
1315
|
+
break;
|
|
1316
|
+
}
|
|
1317
|
+
case 'popout': {
|
|
1318
|
+
const selectedPopoutGroup = this._popoutGroups.find((x) => x.popoutGroup === from);
|
|
1319
|
+
if (!selectedPopoutGroup) {
|
|
1320
|
+
throw new Error('failed to find popout group');
|
|
1006
1321
|
}
|
|
1322
|
+
selectedPopoutGroup.disposable.dispose();
|
|
1007
1323
|
}
|
|
1008
|
-
const referenceLocation = getGridLocation(referenceGroup.element);
|
|
1009
|
-
const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, target);
|
|
1010
|
-
this.gridview.addView(sourceGroup, Sizing.Distribute, dropLocation);
|
|
1011
1324
|
}
|
|
1325
|
+
const referenceLocation = getGridLocation(to.element);
|
|
1326
|
+
const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, target);
|
|
1327
|
+
this.gridview.addView(from, Sizing.Distribute, dropLocation);
|
|
1328
|
+
from.panels.forEach((panel) => {
|
|
1329
|
+
this._onDidMovePanel.fire({ panel });
|
|
1330
|
+
});
|
|
1012
1331
|
}
|
|
1013
1332
|
}
|
|
1014
|
-
|
|
1015
|
-
|
|
1333
|
+
doSetGroupActive(group) {
|
|
1334
|
+
super.doSetGroupActive(group);
|
|
1016
1335
|
const activePanel = this.activePanel;
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
this._onDidActivePanelChange.fire(
|
|
1336
|
+
if (!this._moving &&
|
|
1337
|
+
activePanel !== this._onDidActivePanelChange.value) {
|
|
1338
|
+
this._onDidActivePanelChange.fire(activePanel);
|
|
1339
|
+
}
|
|
1340
|
+
}
|
|
1341
|
+
doSetGroupAndPanelActive(group) {
|
|
1342
|
+
super.doSetGroupActive(group);
|
|
1343
|
+
const activePanel = this.activePanel;
|
|
1344
|
+
if (group &&
|
|
1345
|
+
this.hasMaximizedGroup() &&
|
|
1346
|
+
!this.isMaximizedGroup(group)) {
|
|
1347
|
+
this.exitMaximizedGroup();
|
|
1348
|
+
}
|
|
1349
|
+
if (!this._moving &&
|
|
1350
|
+
activePanel !== this._onDidActivePanelChange.value) {
|
|
1351
|
+
this._onDidActivePanelChange.fire(activePanel);
|
|
1020
1352
|
}
|
|
1021
1353
|
}
|
|
1354
|
+
getNextGroupId() {
|
|
1355
|
+
let id = this.nextGroupId.next();
|
|
1356
|
+
while (this._groups.has(id)) {
|
|
1357
|
+
id = this.nextGroupId.next();
|
|
1358
|
+
}
|
|
1359
|
+
return id;
|
|
1360
|
+
}
|
|
1022
1361
|
createGroup(options) {
|
|
1023
1362
|
if (!options) {
|
|
1024
1363
|
options = {};
|
|
@@ -1035,7 +1374,7 @@ export class DockviewComponent extends BaseGrid {
|
|
|
1035
1374
|
}
|
|
1036
1375
|
}
|
|
1037
1376
|
const view = new DockviewGroupPanel(this, id, options);
|
|
1038
|
-
view.init({ params: {}, accessor:
|
|
1377
|
+
view.init({ params: {}, accessor: this });
|
|
1039
1378
|
if (!this._groups.has(view.id)) {
|
|
1040
1379
|
const disposable = new CompositeDisposable(view.model.onTabDragStart((event) => {
|
|
1041
1380
|
this._onWillDragPanel.fire(event);
|
|
@@ -1043,20 +1382,48 @@ export class DockviewComponent extends BaseGrid {
|
|
|
1043
1382
|
this._onWillDragGroup.fire(event);
|
|
1044
1383
|
}), view.model.onMove((event) => {
|
|
1045
1384
|
const { groupId, itemId, target, index } = event;
|
|
1046
|
-
this.moveGroupOrPanel(
|
|
1385
|
+
this.moveGroupOrPanel({
|
|
1386
|
+
from: { groupId: groupId, panelId: itemId },
|
|
1387
|
+
to: {
|
|
1388
|
+
group: view,
|
|
1389
|
+
position: target,
|
|
1390
|
+
index,
|
|
1391
|
+
},
|
|
1392
|
+
});
|
|
1047
1393
|
}), view.model.onDidDrop((event) => {
|
|
1048
|
-
this._onDidDrop.fire(
|
|
1394
|
+
this._onDidDrop.fire(event);
|
|
1395
|
+
}), view.model.onWillDrop((event) => {
|
|
1396
|
+
this._onWillDrop.fire(event);
|
|
1397
|
+
}), view.model.onWillShowOverlay((event) => {
|
|
1398
|
+
if (this.options.disableDnd) {
|
|
1399
|
+
event.preventDefault();
|
|
1400
|
+
return;
|
|
1401
|
+
}
|
|
1402
|
+
this._onWillShowOverlay.fire(event);
|
|
1049
1403
|
}), view.model.onDidAddPanel((event) => {
|
|
1404
|
+
if (this._moving) {
|
|
1405
|
+
return;
|
|
1406
|
+
}
|
|
1050
1407
|
this._onDidAddPanel.fire(event.panel);
|
|
1051
1408
|
}), view.model.onDidRemovePanel((event) => {
|
|
1409
|
+
if (this._moving) {
|
|
1410
|
+
return;
|
|
1411
|
+
}
|
|
1052
1412
|
this._onDidRemovePanel.fire(event.panel);
|
|
1053
1413
|
}), view.model.onDidActivePanelChange((event) => {
|
|
1054
|
-
this.
|
|
1414
|
+
if (this._moving) {
|
|
1415
|
+
return;
|
|
1416
|
+
}
|
|
1417
|
+
if (event.panel !== this.activePanel) {
|
|
1418
|
+
return;
|
|
1419
|
+
}
|
|
1420
|
+
if (this._onDidActivePanelChange.value !== event.panel) {
|
|
1421
|
+
this._onDidActivePanelChange.fire(event.panel);
|
|
1422
|
+
}
|
|
1055
1423
|
}));
|
|
1056
1424
|
this._groups.set(view.id, { value: view, disposable });
|
|
1057
1425
|
}
|
|
1058
|
-
// TODO: must be called after the above listeners have been setup,
|
|
1059
|
-
// not an ideal pattern
|
|
1426
|
+
// TODO: must be called after the above listeners have been setup, not an ideal pattern
|
|
1060
1427
|
view.initialize();
|
|
1061
1428
|
return view;
|
|
1062
1429
|
}
|
|
@@ -1082,4 +1449,3 @@ export class DockviewComponent extends BaseGrid {
|
|
|
1082
1449
|
return (_a = Array.from(this._groups.values()).find((group) => group.value.model.containsPanel(panel))) === null || _a === void 0 ? void 0 : _a.value;
|
|
1083
1450
|
}
|
|
1084
1451
|
}
|
|
1085
|
-
//# sourceMappingURL=dockviewComponent.js.map
|