dockview 1.10.1 → 1.11.0
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/dockview/defaultTab.d.ts +1 -1
- package/dist/cjs/dockview/defaultTab.js +11 -31
- package/dist/cjs/dockview/dockview.d.ts +1 -1
- package/dist/cjs/dockview/dockview.js +27 -47
- package/dist/cjs/dockview/headerActionsRenderer.d.ts +1 -1
- package/dist/cjs/dockview/headerActionsRenderer.js +2 -0
- package/dist/cjs/dockview/reactContentPart.d.ts +1 -1
- package/dist/cjs/dockview/reactContentPart.js +2 -0
- package/dist/cjs/dockview/reactHeaderPart.d.ts +1 -1
- package/dist/cjs/dockview/reactHeaderPart.js +2 -0
- package/dist/cjs/dockview/reactWatermarkPart.d.ts +1 -1
- package/dist/cjs/dockview/reactWatermarkPart.js +2 -0
- package/dist/cjs/gridview/gridview.d.ts +1 -1
- package/dist/cjs/gridview/gridview.js +13 -33
- package/dist/cjs/paneview/paneview.d.ts +1 -1
- package/dist/cjs/paneview/paneview.js +16 -36
- package/dist/cjs/paneview/view.d.ts +1 -1
- package/dist/cjs/react.d.ts +1 -1
- package/dist/cjs/react.js +16 -36
- package/dist/cjs/splitview/splitview.d.ts +1 -1
- package/dist/cjs/splitview/splitview.js +13 -33
- package/dist/cjs/svg.d.ts +1 -1
- package/dist/cjs/svg.js +7 -27
- package/dist/dockview.amd.js +125 -123
- package/dist/dockview.amd.js.map +1 -1
- package/dist/dockview.amd.min.js +2 -2
- package/dist/dockview.amd.min.js.map +1 -1
- package/dist/dockview.amd.min.noStyle.js +2 -2
- package/dist/dockview.amd.min.noStyle.js.map +1 -1
- package/dist/dockview.amd.noStyle.js +124 -122
- package/dist/dockview.amd.noStyle.js.map +1 -1
- package/dist/dockview.cjs.js +125 -123
- package/dist/dockview.cjs.js.map +1 -1
- package/dist/dockview.esm.js +65 -43
- package/dist/dockview.esm.js.map +1 -1
- package/dist/dockview.esm.min.js +2 -2
- package/dist/dockview.esm.min.js.map +1 -1
- package/dist/dockview.js +125 -123
- package/dist/dockview.js.map +1 -1
- package/dist/dockview.min.js +2 -2
- package/dist/dockview.min.js.map +1 -1
- package/dist/dockview.min.noStyle.js +2 -2
- package/dist/dockview.min.noStyle.js.map +1 -1
- package/dist/dockview.noStyle.js +124 -122
- package/dist/dockview.noStyle.js.map +1 -1
- package/dist/esm/dockview/defaultTab.d.ts +1 -1
- package/dist/esm/dockview/defaultTab.js +4 -4
- package/dist/esm/dockview/dockview.d.ts +1 -1
- package/dist/esm/dockview/dockview.js +1 -1
- package/dist/esm/dockview/headerActionsRenderer.d.ts +1 -1
- package/dist/esm/dockview/headerActionsRenderer.js +2 -0
- package/dist/esm/dockview/reactContentPart.d.ts +1 -1
- package/dist/esm/dockview/reactContentPart.js +2 -0
- package/dist/esm/dockview/reactHeaderPart.d.ts +1 -1
- package/dist/esm/dockview/reactHeaderPart.js +2 -0
- package/dist/esm/dockview/reactWatermarkPart.d.ts +1 -1
- package/dist/esm/dockview/reactWatermarkPart.js +2 -0
- package/dist/esm/gridview/gridview.d.ts +1 -1
- package/dist/esm/gridview/gridview.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +1 -1
- package/dist/esm/paneview/paneview.js +1 -1
- package/dist/esm/paneview/view.d.ts +1 -1
- package/dist/esm/react.d.ts +1 -1
- package/dist/esm/react.js +2 -2
- package/dist/esm/splitview/splitview.d.ts +1 -1
- package/dist/esm/splitview/splitview.js +1 -1
- package/dist/esm/svg.d.ts +1 -1
- package/dist/esm/svg.js +1 -1
- package/dist/styles/dockview.css +849 -8
- package/package.json +3 -3
package/dist/dockview.esm.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* dockview
|
|
3
|
-
* @version 1.
|
|
3
|
+
* @version 1.11.0
|
|
4
4
|
* @link https://github.com/mathuo/dockview
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
7
|
-
import
|
|
8
|
-
import
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import ReactDOM from 'react-dom';
|
|
9
9
|
|
|
10
10
|
function styleInject(css, ref) {
|
|
11
11
|
if ( ref === void 0 ) ref = {};
|
|
@@ -34,7 +34,7 @@ function styleInject(css, ref) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
var css_248z = "@import \"dockview-core/dist/styles/dockview.css\";\n.tab .dockview-react-tab {\n display: flex;\n padding: 0px 8px;\n align-items: center;\n height: 100%;\n}\n.tab .dockview-react-tab .dockview-react-tab-title {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .dockview-react-tab .dv-react-tab-close-btn {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .dockview-react-tab .dv-react-tab-close-btn:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tab.inactive-tab:not(:hover) .dv-react-tab-close-btn {\n visibility: hidden;\n}\n.dockview-react-part {\n height: 100%;\n width: 100%;\n}";
|
|
37
|
+
var css_248z = ".dv-render-overlay {\n position: absolute;\n z-index: 1;\n height: 100%;\n}\n.dv-render-overlay.dv-render-overlay-float {\n z-index: 999;\n}\n\n.dv-debug .dv-render-overlay {\n outline: 1px solid red;\n outline-offset: -1;\n}\n.dockview-svg {\n display: inline-block;\n fill: currentcolor;\n line-height: 1;\n stroke: currentcolor;\n stroke-width: 0;\n}\n.dockview-theme-dark {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n}\n\n.dockview-theme-light {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: white;\n --dv-tabs-and-actions-container-background-color: #f3f3f3;\n --dv-activegroup-visiblepanel-tab-background-color: white;\n --dv-activegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-inactivegroup-visiblepanel-tab-background-color: white;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-tab-divider-color: white;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.35);\n --dv-separator-border: rgba(128, 128, 128, 0.35);\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n}\n\n.dockview-theme-vs {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n --dv-tabs-and-actions-container-background-color: #2d2d30;\n --dv-tabs-and-actions-container-height: 20px;\n --dv-tabs-and-actions-container-font-size: 11px;\n --dv-activegroup-visiblepanel-tab-background-color: #007acc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #3f3f46;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: white;\n --dv-inactivegroup-visiblepanel-tab-color: white;\n --dv-inactivegroup-hiddenpanel-tab-color: white;\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-activegroup-hiddenpanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n}\n\n.dockview-theme-abyss {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #000c18;\n --dv-tabs-and-actions-container-background-color: #1c1c2a;\n --dv-activegroup-visiblepanel-tab-background-color: #000c18;\n --dv-activegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #000c18;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-tab-divider-color: #2b2b4a;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.25);\n --dv-separator-border: #2b2b4a;\n --dv-paneview-header-border-color: #2b2b4a;\n --dv-paneview-active-outline-color: #596f99;\n}\n\n.dockview-theme-dracula {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #282a36;\n --dv-tabs-and-actions-container-background-color: #191a21;\n --dv-activegroup-visiblepanel-tab-background-color: #282a36;\n --dv-activegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #282a36;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-tab-divider-color: #191a21;\n --dv-activegroup-visiblepanel-tab-color: rgb(248, 248, 242);\n --dv-activegroup-hiddenpanel-tab-color: rgb(98, 114, 164);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(248, 248, 242, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(98, 114, 164, 0.5);\n --dv-separator-border: #bd93f9;\n --dv-paneview-header-border-color: #bd93f9;\n --dv-paneview-active-outline-color: #6272a4;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n top: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #94527e;\n z-index: 999;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n bottom: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #5e3d5a;\n z-index: 999;\n}\n\n.dockview-theme-replit {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-gap-size: 3px;\n --dv-group-view-background-color: #ebeced;\n --dv-tabs-and-actions-container-background-color: #fcfcfc;\n --dv-activegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-activegroup-hiddenpanel-tab-background-color: ##fcfcfc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #fcfcfc;\n --dv-tab-divider-color: transparent;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-separator-border: transparent;\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n --dv-background-color: #ebeced;\n --dv-separator-handle-background-color: #cfd1d3;\n --dv-separator-handle-hover-background-color: #babbbb;\n}\n.dockview-theme-replit .dv-resize-container:has(> .groupview) {\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview {\n overflow: hidden;\n border-radius: 10px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container {\n border-bottom: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab {\n margin: 4px;\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab .dockview-svg {\n height: 8px;\n width: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab:hover {\n background-color: #e4e5e6 !important;\n}\n.dockview-theme-replit .groupview .content-container {\n background-color: #fcfcfc;\n}\n.dockview-theme-replit .groupview.active-group {\n border: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview.inactive-group {\n border: 1px solid transparent;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash::after {\n content: \"\";\n height: 4px;\n width: 40px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash:hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash::after {\n content: \"\";\n height: 40px;\n width: 4px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash:hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.drop-target {\n position: relative;\n}\n.drop-target > .drop-target-dropzone {\n position: absolute;\n left: 0px;\n top: 0px;\n height: 100%;\n width: 100%;\n z-index: 1000;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection {\n position: relative;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n background-color: var(--dv-drag-over-background-color);\n transition: top 70ms ease-out, left 70ms ease-out, width 70ms ease-out, height 70ms ease-out, opacity 0.15s ease-out;\n will-change: transform;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-top.dv-drop-target-small-vertical {\n border-top: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-bottom.dv-drop-target-small-vertical {\n border-bottom: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-left.dv-drop-target-small-horizontal {\n border-left: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-right.dv-drop-target-small-horizontal {\n border-right: 1px solid var(--dv-drag-over-border-color);\n}\n.dv-debug .dv-resize-container .dv-resize-handle-top {\n background-color: red;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-bottom {\n background-color: green;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-left {\n background-color: yellow;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-right {\n background-color: blue;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-topleft,\n.dv-debug .dv-resize-container .dv-resize-handle-topright,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomleft,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomright {\n background-color: cyan;\n}\n\n.dv-resize-container {\n position: absolute;\n z-index: 997;\n border: 1px solid var(--dv-tab-divider-color);\n box-shadow: var(--dv-floating-box-shadow);\n}\n.dv-resize-container.dv-bring-to-front {\n z-index: 998;\n}\n.dv-resize-container.dv-resize-container-dragging {\n opacity: 0.5;\n}\n.dv-resize-container .dv-resize-handle-top {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-bottom {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-left {\n height: calc(100% - 8px);\n width: 4px;\n left: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-right {\n height: calc(100% - 8px);\n width: 4px;\n right: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-topleft {\n height: 4px;\n width: 4px;\n top: -2px;\n left: -2px;\n z-index: 999;\n position: absolute;\n cursor: nw-resize;\n}\n.dv-resize-container .dv-resize-handle-topright {\n height: 4px;\n width: 4px;\n right: -2px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ne-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomleft {\n height: 4px;\n width: 4px;\n left: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: sw-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomright {\n height: 4px;\n width: 4px;\n right: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: se-resize;\n}\n.dv-dockview {\n position: relative;\n background-color: var(--dv-group-view-background-color);\n}\n.dv-dockview .dv-watermark-container {\n position: absolute;\n top: 0px;\n left: 0px;\n height: 100%;\n width: 100%;\n z-index: 1;\n}\n.dv-dockview .dv-overlay-render-container {\n position: relative;\n}\n.dv-dockview .split-view-container.horizontal > .view-container > .view:not(:last-child) {\n border-right: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.horizontal > .view-container > .view:not(:first-child) {\n border-left: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.vertical > .view-container > .view:not(:last-child) {\n border-bottom: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.vertical > .view-container > .view:not(:first-child) {\n border-top: var(--dv-group-gap-size) solid transparent;\n}\n\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-activegroup-hiddenpanel-tab-background-color);\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-inactivegroup-visiblepanel-tab-background-color);\n color: var(--dv-inactivegroup-visiblepanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n color: var(--dv-inactivegroup-hiddenpanel-tab-color);\n}\n\n/**\n * when a tab is dragged we lose the above stylings because they are conditional on parent elements\n * therefore we also set some stylings for the dragging event\n **/\n.tab.dv-tab-dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview {\n display: flex;\n flex-direction: column;\n height: 100%;\n background-color: var(--dv-group-view-background-color);\n overflow: hidden;\n}\n.groupview:focus {\n outline: none;\n}\n.groupview.empty > .tabs-and-actions-container {\n display: none;\n}\n.groupview > .content-container {\n flex-grow: 1;\n min-height: 0;\n outline: none;\n}\n.dv-root-wrapper {\n height: 100%;\n width: 100%;\n}\n.grid-view,\n.branch-node {\n height: 100%;\n width: 100%;\n}\n.pane-container {\n height: 100%;\n width: 100%;\n}\n.pane-container.animated .view {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.pane-container .view {\n overflow: hidden;\n display: flex;\n flex-direction: column;\n padding: 0px !important;\n}\n.pane-container .view:not(:first-child)::before {\n background-color: transparent !important;\n}\n.pane-container .view:not(:first-child) .pane > .pane-header {\n border-top: 1px solid var(--dv-paneview-header-border-color);\n}\n.pane-container .view .default-header {\n background-color: var(--dv-group-view-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n display: flex;\n padding: 0px 8px;\n cursor: pointer;\n}\n.pane-container .view .default-header .dockview-pane-header-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.pane-container .view .default-header > span {\n padding-left: 8px;\n flex-grow: 1;\n}\n.pane-container:first-of-type > .pane > .pane-header {\n border-top: none !important;\n}\n.pane-container .pane {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n height: 100%;\n}\n.pane-container .pane .pane-header {\n box-sizing: border-box;\n user-select: none;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-header.pane-draggable {\n cursor: pointer;\n}\n.pane-container .pane .pane-header:focus:before, .pane-container .pane .pane-header:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.pane-container .pane .pane-body {\n overflow-y: auto;\n overflow-x: hidden;\n flex-grow: 1;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-body:focus:before, .pane-container .pane .pane-body:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.dv-debug .split-view-container .sash-container .sash.enabled {\n background-color: black;\n}\n.dv-debug .split-view-container .sash-container .sash.disabled {\n background-color: orange;\n}\n.dv-debug .split-view-container .sash-container .sash.maximum {\n background-color: green;\n}\n.dv-debug .split-view-container .sash-container .sash.minimum {\n background-color: red;\n}\n\n.split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n}\n.split-view-container.dv-splitview-disabled > .sash-container > .sash {\n pointer-events: none;\n}\n.split-view-container.animation .view,\n.split-view-container.animation .sash {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.split-view-container.horizontal {\n height: 100%;\n}\n.split-view-container.horizontal > .sash-container > .sash {\n height: 100%;\n width: 4px;\n}\n.split-view-container.horizontal > .sash-container > .sash.enabled {\n cursor: ew-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.horizontal > .sash-container > .sash.maximum {\n cursor: w-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.minimum {\n cursor: e-resize;\n}\n.split-view-container.horizontal > .view-container > .view:not(:first-child)::before {\n height: 100%;\n width: 1px;\n}\n.split-view-container.vertical {\n width: 100%;\n}\n.split-view-container.vertical > .sash-container > .sash {\n width: 100%;\n height: 4px;\n}\n.split-view-container.vertical > .sash-container > .sash.enabled {\n cursor: ns-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.vertical > .sash-container > .sash.maximum {\n cursor: n-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.minimum {\n cursor: s-resize;\n}\n.split-view-container.vertical > .view-container > .view {\n width: 100%;\n}\n.split-view-container.vertical > .view-container > .view:not(:first-child)::before {\n height: 1px;\n width: 100%;\n}\n.split-view-container .sash-container {\n height: 100%;\n width: 100%;\n position: absolute;\n}\n.split-view-container .sash-container .sash {\n position: absolute;\n z-index: 99;\n outline: none;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n touch-action: none;\n}\n.split-view-container .sash-container .sash:not(.disabled):active {\n transition: background-color 0.1s ease-in-out;\n background-color: var(--dv-active-sash-color, transparent);\n}\n.split-view-container .sash-container .sash:not(.disabled):hover {\n background-color: var(--dv-active-sash-color, transparent);\n transition: background-color 0.1s ease-in-out;\n transition-delay: 0.5s;\n}\n.split-view-container .view-container {\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--dv-background-color);\n}\n.split-view-container .view-container .view {\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: absolute;\n}\n.split-view-container.separator-border .view:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-separator-border);\n}\n.dv-dragged {\n transform: translate3d(0px, 0px, 0px); /* forces tab to be drawn on a separate layer (see https://github.com/microsoft/vscode/issues/18733) */\n}\n\n.tab {\n flex-shrink: 0;\n}\n.tab:focus-within, .tab:focus {\n position: relative;\n}\n.tab:focus-within::after, .tab:focus::after {\n position: absolute;\n content: \"\";\n height: 100%;\n width: 100%;\n top: 0px;\n left: 0px;\n pointer-events: none;\n outline: 1px solid var(--dv-tab-divider-color) !important;\n outline-offset: -1px;\n z-index: 5;\n}\n.tab.dv-tab-dragging .dv-default-tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.tab.active-tab .dv-default-tab .dv-default-tab-action {\n visibility: visible;\n}\n.tab.inactive-tab .dv-default-tab .dv-default-tab-action {\n visibility: hidden;\n}\n.tab.inactive-tab .dv-default-tab:hover .dv-default-tab-action {\n visibility: visible;\n}\n.tab .dv-default-tab {\n position: relative;\n height: 100%;\n display: flex;\n min-width: 80px;\n align-items: center;\n padding: 0px 8px;\n white-space: nowrap;\n text-overflow: elipsis;\n}\n.tab .dv-default-tab .dv-default-tab-content {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .dv-default-tab .dv-default-tab-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .dv-default-tab .dv-default-tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tabs-and-actions-container {\n display: flex;\n background-color: var(--dv-tabs-and-actions-container-background-color);\n flex-shrink: 0;\n box-sizing: border-box;\n height: var(--dv-tabs-and-actions-container-height);\n font-size: var(--dv-tabs-and-actions-container-font-size);\n}\n.tabs-and-actions-container.hidden {\n display: none;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container .tab {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .void-container {\n flex-grow: 0;\n}\n.tabs-and-actions-container .void-container {\n display: flex;\n flex-grow: 1;\n cursor: grab;\n}\n.tabs-and-actions-container .tabs-container {\n display: flex;\n overflow-x: overlay;\n overflow-y: hidden;\n scrollbar-width: thin;\n /* Track */\n /* Handle */\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar {\n height: 3px;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-track {\n background: transparent;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-thumb {\n background: var(--dv-tabs-container-scrollbar-color);\n}\n.tabs-and-actions-container .tabs-container .tab {\n -webkit-user-drag: element;\n outline: none;\n min-width: 75px;\n cursor: pointer;\n position: relative;\n box-sizing: border-box;\n}\n.tabs-and-actions-container .tabs-container .tab:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-tab-divider-color);\n width: 1px;\n height: 100%;\n}\n.watermark {\n display: flex;\n width: 100%;\n}\n.watermark.has-actions .watermark-title .actions-container {\n display: none;\n}\n.watermark .watermark-title {\n height: 35px;\n width: 100%;\n display: flex;\n}\n.watermark .watermark-content {\n flex-grow: 1;\n}\n.watermark .actions-container {\n display: flex;\n align-items: center;\n padding: 0px 8px;\n}\n.watermark .actions-container .close-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n cursor: pointer;\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.watermark .actions-container .close-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}";
|
|
38
38
|
styleInject(css_248z);
|
|
39
39
|
|
|
40
40
|
class TransferObject {
|
|
@@ -4266,6 +4266,7 @@ class DockviewGroupPanelModel extends CompositeDisposable {
|
|
|
4266
4266
|
this._width = 0;
|
|
4267
4267
|
this._height = 0;
|
|
4268
4268
|
this._panels = [];
|
|
4269
|
+
this._panelDisposables = new Map();
|
|
4269
4270
|
this._onMove = new Emitter();
|
|
4270
4271
|
this.onMove = this._onMove.event;
|
|
4271
4272
|
this._onDidDrop = new Emitter();
|
|
@@ -4280,6 +4281,10 @@ class DockviewGroupPanelModel extends CompositeDisposable {
|
|
|
4280
4281
|
this.onGroupDragStart = this._onGroupDragStart.event;
|
|
4281
4282
|
this._onDidAddPanel = new Emitter();
|
|
4282
4283
|
this.onDidAddPanel = this._onDidAddPanel.event;
|
|
4284
|
+
this._onDidPanelTitleChange = new Emitter();
|
|
4285
|
+
this.onDidPanelTitleChange = this._onDidPanelTitleChange.event;
|
|
4286
|
+
this._onDidPanelParametersChange = new Emitter();
|
|
4287
|
+
this.onDidPanelParametersChange = this._onDidPanelParametersChange.event;
|
|
4283
4288
|
this._onDidRemovePanel = new Emitter();
|
|
4284
4289
|
this.onDidRemovePanel = this._onDidRemovePanel.event;
|
|
4285
4290
|
this._onDidActivePanelChange = new Emitter();
|
|
@@ -4568,6 +4573,11 @@ class DockviewGroupPanelModel extends CompositeDisposable {
|
|
|
4568
4573
|
if (this.mostRecentlyUsed.includes(panel)) {
|
|
4569
4574
|
this.mostRecentlyUsed.splice(this.mostRecentlyUsed.indexOf(panel), 1);
|
|
4570
4575
|
}
|
|
4576
|
+
const disposable = this._panelDisposables.get(panel.id);
|
|
4577
|
+
if (disposable) {
|
|
4578
|
+
disposable.dispose();
|
|
4579
|
+
this._panelDisposables.delete(panel.id);
|
|
4580
|
+
}
|
|
4571
4581
|
this._onDidRemovePanel.fire({ panel });
|
|
4572
4582
|
}
|
|
4573
4583
|
doAddPanel(panel, index = this.panels.length, options = { skipSetActive: false }) {
|
|
@@ -4585,6 +4595,7 @@ class DockviewGroupPanelModel extends CompositeDisposable {
|
|
|
4585
4595
|
}
|
|
4586
4596
|
this.updateMru(panel);
|
|
4587
4597
|
this.panels.splice(index, 0, panel);
|
|
4598
|
+
this._panelDisposables.set(panel.id, new CompositeDisposable(panel.api.onDidTitleChange((event) => this._onDidPanelTitleChange.fire(event)), panel.api.onDidParametersChange((event) => this._onDidPanelParametersChange.fire(event))));
|
|
4588
4599
|
this._onDidAddPanel.fire({ panel });
|
|
4589
4600
|
}
|
|
4590
4601
|
doSetActivePanel(panel) {
|
|
@@ -5008,14 +5019,16 @@ class PanelApiImpl extends CompositeDisposable {
|
|
|
5008
5019
|
get height() {
|
|
5009
5020
|
return this._height;
|
|
5010
5021
|
}
|
|
5011
|
-
constructor(id) {
|
|
5022
|
+
constructor(id, component) {
|
|
5012
5023
|
super();
|
|
5013
5024
|
this.id = id;
|
|
5025
|
+
this.component = component;
|
|
5014
5026
|
this._isFocused = false;
|
|
5015
5027
|
this._isActive = false;
|
|
5016
5028
|
this._isVisible = true;
|
|
5017
5029
|
this._width = 0;
|
|
5018
5030
|
this._height = 0;
|
|
5031
|
+
this._parameters = {};
|
|
5019
5032
|
this.panelUpdatesDisposable = new MutableDisposable();
|
|
5020
5033
|
this._onDidDimensionChange = new Emitter();
|
|
5021
5034
|
this.onDidDimensionsChange = this._onDidDimensionChange.event;
|
|
@@ -5033,8 +5046,8 @@ class PanelApiImpl extends CompositeDisposable {
|
|
|
5033
5046
|
this.onDidActiveChange = this._onDidActiveChange.event;
|
|
5034
5047
|
this._onActiveChange = new Emitter();
|
|
5035
5048
|
this.onActiveChange = this._onActiveChange.event;
|
|
5036
|
-
this.
|
|
5037
|
-
this.
|
|
5049
|
+
this._onDidParametersChange = new Emitter();
|
|
5050
|
+
this.onDidParametersChange = this._onDidParametersChange.event;
|
|
5038
5051
|
this.addDisposables(this.onDidFocusChange((event) => {
|
|
5039
5052
|
this._isFocused = event.isFocused;
|
|
5040
5053
|
}), this.onDidActiveChange((event) => {
|
|
@@ -5044,10 +5057,14 @@ class PanelApiImpl extends CompositeDisposable {
|
|
|
5044
5057
|
}), this.onDidDimensionsChange((event) => {
|
|
5045
5058
|
this._width = event.width;
|
|
5046
5059
|
this._height = event.height;
|
|
5047
|
-
}), this.panelUpdatesDisposable, this._onDidDimensionChange, this._onDidChangeFocus, this._onDidVisibilityChange, this._onDidActiveChange, this._onWillFocus, this._onActiveChange, this.
|
|
5060
|
+
}), this.panelUpdatesDisposable, this._onDidDimensionChange, this._onDidChangeFocus, this._onDidVisibilityChange, this._onDidActiveChange, this._onWillFocus, this._onActiveChange, this._onWillFocus, this._onWillVisibilityChange, this._onDidParametersChange);
|
|
5061
|
+
}
|
|
5062
|
+
getParameters() {
|
|
5063
|
+
return this._parameters;
|
|
5048
5064
|
}
|
|
5049
5065
|
initialize(panel) {
|
|
5050
|
-
this.panelUpdatesDisposable.value = this.
|
|
5066
|
+
this.panelUpdatesDisposable.value = this._onDidParametersChange.event((parameters) => {
|
|
5067
|
+
this._parameters = parameters;
|
|
5051
5068
|
panel.update({
|
|
5052
5069
|
params: parameters,
|
|
5053
5070
|
});
|
|
@@ -5060,14 +5077,14 @@ class PanelApiImpl extends CompositeDisposable {
|
|
|
5060
5077
|
this._onActiveChange.fire();
|
|
5061
5078
|
}
|
|
5062
5079
|
updateParameters(parameters) {
|
|
5063
|
-
this.
|
|
5080
|
+
this._onDidParametersChange.fire(parameters);
|
|
5064
5081
|
}
|
|
5065
5082
|
}
|
|
5066
5083
|
|
|
5067
5084
|
class SplitviewPanelApiImpl extends PanelApiImpl {
|
|
5068
5085
|
//
|
|
5069
|
-
constructor(id) {
|
|
5070
|
-
super(id);
|
|
5086
|
+
constructor(id, component) {
|
|
5087
|
+
super(id, component);
|
|
5071
5088
|
this._onDidConstraintsChangeInternal = new Emitter();
|
|
5072
5089
|
this.onDidConstraintsChangeInternal = this._onDidConstraintsChangeInternal.event;
|
|
5073
5090
|
//
|
|
@@ -5092,8 +5109,8 @@ class PaneviewPanelApiImpl extends SplitviewPanelApiImpl {
|
|
|
5092
5109
|
set pane(pane) {
|
|
5093
5110
|
this._pane = pane;
|
|
5094
5111
|
}
|
|
5095
|
-
constructor(id) {
|
|
5096
|
-
super(id);
|
|
5112
|
+
constructor(id, component) {
|
|
5113
|
+
super(id, component);
|
|
5097
5114
|
this._onDidExpansionChange = new Emitter({
|
|
5098
5115
|
replay: true,
|
|
5099
5116
|
});
|
|
@@ -5252,7 +5269,7 @@ class PaneviewPanel extends BasePanelView {
|
|
|
5252
5269
|
this.header.style.display = value ? '' : 'none';
|
|
5253
5270
|
}
|
|
5254
5271
|
constructor(id, component, headerComponent, orientation, isExpanded, isHeaderVisible) {
|
|
5255
|
-
super(id, component, new PaneviewPanelApiImpl(id));
|
|
5272
|
+
super(id, component, new PaneviewPanelApiImpl(id, component));
|
|
5256
5273
|
this.headerComponent = headerComponent;
|
|
5257
5274
|
this._onDidChangeExpansionState = new Emitter({ replay: true });
|
|
5258
5275
|
this.onDidChangeExpansionState = this._onDidChangeExpansionState.event;
|
|
@@ -5483,8 +5500,8 @@ class DraggablePaneviewPanel extends PaneviewPanel {
|
|
|
5483
5500
|
}
|
|
5484
5501
|
|
|
5485
5502
|
class GridviewPanelApiImpl extends PanelApiImpl {
|
|
5486
|
-
constructor(id, panel) {
|
|
5487
|
-
super(id);
|
|
5503
|
+
constructor(id, component, panel) {
|
|
5504
|
+
super(id, component);
|
|
5488
5505
|
this._onDidConstraintsChangeInternal = new Emitter();
|
|
5489
5506
|
this.onDidConstraintsChangeInternal = this._onDidConstraintsChangeInternal.event;
|
|
5490
5507
|
this._onDidConstraintsChange = new Emitter();
|
|
@@ -5555,7 +5572,7 @@ class GridviewPanel extends BasePanelView {
|
|
|
5555
5572
|
return this.api.isActive;
|
|
5556
5573
|
}
|
|
5557
5574
|
constructor(id, component, options, api) {
|
|
5558
|
-
super(id, component, api !== null && api !== void 0 ? api : new GridviewPanelApiImpl(id));
|
|
5575
|
+
super(id, component, api !== null && api !== void 0 ? api : new GridviewPanelApiImpl(id, component));
|
|
5559
5576
|
this._evaluatedMinimumWidth = 0;
|
|
5560
5577
|
this._evaluatedMaximumWidth = Number.MAX_SAFE_INTEGER;
|
|
5561
5578
|
this._evaluatedMinimumHeight = 0;
|
|
@@ -5663,7 +5680,7 @@ class DockviewGroupPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
5663
5680
|
return this._group.model.location;
|
|
5664
5681
|
}
|
|
5665
5682
|
constructor(id, accessor) {
|
|
5666
|
-
super(id);
|
|
5683
|
+
super(id, '__dockviewgroup__');
|
|
5667
5684
|
this.accessor = accessor;
|
|
5668
5685
|
this._onDidLocationChange = new Emitter();
|
|
5669
5686
|
this.onDidLocationChange = this._onDidLocationChange.event;
|
|
@@ -5837,8 +5854,11 @@ class DockviewPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
5837
5854
|
get group() {
|
|
5838
5855
|
return this._group;
|
|
5839
5856
|
}
|
|
5840
|
-
|
|
5841
|
-
|
|
5857
|
+
get tabComponent() {
|
|
5858
|
+
return this._tabComponent;
|
|
5859
|
+
}
|
|
5860
|
+
constructor(panel, group, accessor, component, tabComponent) {
|
|
5861
|
+
super(panel.id, component);
|
|
5842
5862
|
this.panel = panel;
|
|
5843
5863
|
this.accessor = accessor;
|
|
5844
5864
|
this._onDidTitleChange = new Emitter();
|
|
@@ -5852,6 +5872,7 @@ class DockviewPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
5852
5872
|
this._onDidLocationChange = new Emitter();
|
|
5853
5873
|
this.onDidLocationChange = this._onDidLocationChange.event;
|
|
5854
5874
|
this.groupEventsDisposable = new MutableDisposable();
|
|
5875
|
+
this._tabComponent = tabComponent;
|
|
5855
5876
|
this.initialize(panel);
|
|
5856
5877
|
this._group = group;
|
|
5857
5878
|
this.setupGroupEventListeners();
|
|
@@ -5934,7 +5955,7 @@ class DockviewPanel extends CompositeDisposable {
|
|
|
5934
5955
|
var _a;
|
|
5935
5956
|
return (_a = this._renderer) !== null && _a !== void 0 ? _a : this.accessor.renderer;
|
|
5936
5957
|
}
|
|
5937
|
-
constructor(id, accessor, containerApi, group, view, options) {
|
|
5958
|
+
constructor(id, component, tabComponent, accessor, containerApi, group, view, options) {
|
|
5938
5959
|
super();
|
|
5939
5960
|
this.id = id;
|
|
5940
5961
|
this.accessor = accessor;
|
|
@@ -5942,7 +5963,7 @@ class DockviewPanel extends CompositeDisposable {
|
|
|
5942
5963
|
this.view = view;
|
|
5943
5964
|
this._renderer = options.renderer;
|
|
5944
5965
|
this._group = group;
|
|
5945
|
-
this.api = new DockviewPanelApiImpl(this, this._group, accessor);
|
|
5966
|
+
this.api = new DockviewPanelApiImpl(this, this._group, accessor, component, tabComponent);
|
|
5946
5967
|
this.addDisposables(this.api.onActiveChange(() => {
|
|
5947
5968
|
accessor.setActivePanel(this);
|
|
5948
5969
|
}), this.api.onDidSizeChange((event) => {
|
|
@@ -6110,27 +6131,18 @@ class DefaultTab extends CompositeDisposable {
|
|
|
6110
6131
|
//
|
|
6111
6132
|
this.params = {};
|
|
6112
6133
|
this._element = document.createElement('div');
|
|
6113
|
-
this._element.className = 'default-tab';
|
|
6134
|
+
this._element.className = 'dv-default-tab';
|
|
6114
6135
|
//
|
|
6115
6136
|
this._content = document.createElement('div');
|
|
6116
|
-
this._content.className = 'tab-content';
|
|
6117
|
-
//
|
|
6118
|
-
this._actionContainer = document.createElement('div');
|
|
6119
|
-
this._actionContainer.className = 'action-container';
|
|
6120
|
-
//
|
|
6121
|
-
this._list = document.createElement('ul');
|
|
6122
|
-
this._list.className = 'tab-list';
|
|
6123
|
-
//
|
|
6137
|
+
this._content.className = 'dv-default-tab-content';
|
|
6124
6138
|
this.action = document.createElement('div');
|
|
6125
|
-
this.action.className = 'tab-action';
|
|
6139
|
+
this.action.className = 'dv-default-tab-action';
|
|
6126
6140
|
this.action.appendChild(createCloseButton());
|
|
6127
6141
|
//
|
|
6128
6142
|
this._element.appendChild(this._content);
|
|
6129
|
-
this._element.appendChild(this.
|
|
6130
|
-
this._actionContainer.appendChild(this._list);
|
|
6131
|
-
this._list.appendChild(this.action);
|
|
6143
|
+
this._element.appendChild(this.action);
|
|
6132
6144
|
//
|
|
6133
|
-
this.addDisposables(addDisposableListener(this.
|
|
6145
|
+
this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
|
|
6134
6146
|
ev.preventDefault();
|
|
6135
6147
|
}));
|
|
6136
6148
|
this.render();
|
|
@@ -6237,7 +6249,7 @@ class DefaultDockviewDeserialzier {
|
|
|
6237
6249
|
? (_b = viewData.tab) === null || _b === void 0 ? void 0 : _b.id
|
|
6238
6250
|
: panelData.tabComponent;
|
|
6239
6251
|
const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
|
|
6240
|
-
const panel = new DockviewPanel(panelId, this.accessor, new DockviewApi(this.accessor), group, view, {
|
|
6252
|
+
const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
|
|
6241
6253
|
renderer: panelData.renderer,
|
|
6242
6254
|
});
|
|
6243
6255
|
panel.init({
|
|
@@ -8224,6 +8236,8 @@ class DockviewComponent extends BaseGrid {
|
|
|
8224
8236
|
if (this._onDidActivePanelChange.value !== event.panel) {
|
|
8225
8237
|
this._onDidActivePanelChange.fire(event.panel);
|
|
8226
8238
|
}
|
|
8239
|
+
}), Event.any(view.model.onDidPanelTitleChange, view.model.onDidPanelParametersChange)(() => {
|
|
8240
|
+
this._bufferOnDidLayoutChange.fire();
|
|
8227
8241
|
}));
|
|
8228
8242
|
this._groups.set(view.id, { value: view, disposable });
|
|
8229
8243
|
}
|
|
@@ -8236,7 +8250,7 @@ class DockviewComponent extends BaseGrid {
|
|
|
8236
8250
|
const contentComponent = options.component;
|
|
8237
8251
|
const tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
|
|
8238
8252
|
const view = new DockviewPanelModel(this, options.id, contentComponent, tabComponent);
|
|
8239
|
-
const panel = new DockviewPanel(options.id, this, this._api, group, view, { renderer: options.renderer });
|
|
8253
|
+
const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
|
|
8240
8254
|
panel.init({
|
|
8241
8255
|
title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
|
|
8242
8256
|
params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
|
|
@@ -9151,7 +9165,7 @@ class SplitviewPanel extends BasePanelView {
|
|
|
9151
9165
|
return this._snap;
|
|
9152
9166
|
}
|
|
9153
9167
|
constructor(id, componentName) {
|
|
9154
|
-
super(id, componentName, new SplitviewPanelApiImpl(id));
|
|
9168
|
+
super(id, componentName, new SplitviewPanelApiImpl(id, componentName));
|
|
9155
9169
|
this._evaluatedMinimumSize = 0;
|
|
9156
9170
|
this._evaluatedMaximumSize = Number.POSITIVE_INFINITY;
|
|
9157
9171
|
this._minimumSize = 0;
|
|
@@ -9366,6 +9380,8 @@ class ReactPanelContentPart {
|
|
|
9366
9380
|
this.onDidBlur = this._onDidBlur.event;
|
|
9367
9381
|
this._element = document.createElement('div');
|
|
9368
9382
|
this._element.className = 'dockview-react-part';
|
|
9383
|
+
this._element.style.height = '100%';
|
|
9384
|
+
this._element.style.width = '100%';
|
|
9369
9385
|
}
|
|
9370
9386
|
focus() {
|
|
9371
9387
|
// TODO
|
|
@@ -9402,6 +9418,8 @@ class ReactPanelHeaderPart {
|
|
|
9402
9418
|
this.reactPortalStore = reactPortalStore;
|
|
9403
9419
|
this._element = document.createElement('div');
|
|
9404
9420
|
this._element.className = 'dockview-react-part';
|
|
9421
|
+
this._element.style.height = '100%';
|
|
9422
|
+
this._element.style.width = '100%';
|
|
9405
9423
|
}
|
|
9406
9424
|
focus() {
|
|
9407
9425
|
//noop
|
|
@@ -9436,6 +9454,8 @@ class ReactWatermarkPart {
|
|
|
9436
9454
|
this.reactPortalStore = reactPortalStore;
|
|
9437
9455
|
this._element = document.createElement('div');
|
|
9438
9456
|
this._element.className = 'dockview-react-part';
|
|
9457
|
+
this._element.style.height = '100%';
|
|
9458
|
+
this._element.style.width = '100%';
|
|
9439
9459
|
}
|
|
9440
9460
|
init(parameters) {
|
|
9441
9461
|
this.part = new ReactPart(this.element, this.reactPortalStore, this.component, {
|
|
@@ -9487,6 +9507,8 @@ class ReactHeaderActionsRendererPart {
|
|
|
9487
9507
|
this.mutableDisposable = new MutableDisposable();
|
|
9488
9508
|
this._element = document.createElement('div');
|
|
9489
9509
|
this._element.className = 'dockview-react-part';
|
|
9510
|
+
this._element.style.height = '100%';
|
|
9511
|
+
this._element.style.width = '100%';
|
|
9490
9512
|
}
|
|
9491
9513
|
focus() {
|
|
9492
9514
|
// TODO
|
|
@@ -9827,9 +9849,9 @@ const DockviewDefaultTab = (_a) => {
|
|
|
9827
9849
|
rest.onClick(event);
|
|
9828
9850
|
}
|
|
9829
9851
|
}, [api, rest.onClick]);
|
|
9830
|
-
return (React.createElement("div", Object.assign({ "data-testid": "dockview-default-tab" }, rest, { onClick: onClick, className: "
|
|
9831
|
-
React.createElement("span", { className: "
|
|
9832
|
-
!hideClose && (React.createElement("div", { className: "dv-
|
|
9852
|
+
return (React.createElement("div", Object.assign({ "data-testid": "dockview-dv-default-tab" }, rest, { onClick: onClick, className: "dv-default-tab" }),
|
|
9853
|
+
React.createElement("span", { className: "dv-default-tab-content" }, api.title),
|
|
9854
|
+
!hideClose && (React.createElement("div", { className: "dv-default-tab-action", onMouseDown: onMouseDown, onClick: onClose },
|
|
9833
9855
|
React.createElement(CloseButton, null)))));
|
|
9834
9856
|
};
|
|
9835
9857
|
|