dockview-core 1.15.3 → 1.16.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 +32 -6
- package/dist/cjs/api/component.api.js +42 -6
- package/dist/cjs/api/dockviewPanelApi.d.ts +1 -1
- package/dist/cjs/api/entryPoints.d.ts +9 -0
- package/dist/cjs/api/entryPoints.js +28 -0
- package/dist/cjs/dnd/abstractDragHandler.js +2 -65
- package/dist/cjs/dockview/components/titlebar/voidContainer.js +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +4 -2
- package/dist/cjs/dockview/dockviewComponent.js +60 -17
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts +1 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +1 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +1 -1
- package/dist/cjs/dockview/dockviewPanel.d.ts +1 -1
- package/dist/cjs/dockview/dockviewPanel.js +1 -1
- package/dist/cjs/dockview/options.d.ts +2 -2
- package/dist/cjs/dockview/options.js +1 -0
- package/dist/cjs/dockview/types.d.ts +1 -1
- package/dist/cjs/dom.d.ts +3 -0
- package/dist/cjs/dom.js +66 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +5 -2
- package/dist/cjs/gridview/baseComponentGridview.js +54 -3
- package/dist/cjs/gridview/gridviewComponent.d.ts +3 -4
- package/dist/cjs/gridview/gridviewComponent.js +4 -2
- package/dist/cjs/gridview/options.d.ts +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +6 -1
- package/dist/cjs/{dnd → overlay}/overlay.d.ts +3 -0
- package/dist/cjs/{dnd → overlay}/overlay.js +41 -82
- package/dist/cjs/{overlayRenderContainer.d.ts → overlay/overlayRenderContainer.d.ts} +7 -5
- package/dist/cjs/{overlayRenderContainer.js → overlay/overlayRenderContainer.js} +41 -6
- package/dist/cjs/paneview/options.d.ts +1 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +2 -1
- package/dist/cjs/paneview/paneviewComponent.js +68 -19
- package/dist/cjs/splitview/options.d.ts +1 -1
- package/dist/cjs/splitview/splitview.js +64 -71
- package/dist/cjs/splitview/splitviewComponent.d.ts +5 -5
- package/dist/cjs/splitview/splitviewComponent.js +70 -21
- package/dist/dockview-core.amd.js +301 -98
- 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 +300 -97
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +301 -98
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +298 -99
- 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 +301 -98
- 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 +300 -97
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/component.api.d.ts +32 -6
- package/dist/esm/api/component.api.js +42 -6
- package/dist/esm/api/dockviewPanelApi.d.ts +1 -1
- package/dist/esm/api/entryPoints.d.ts +9 -0
- package/dist/esm/api/entryPoints.js +21 -0
- package/dist/esm/dnd/abstractDragHandler.js +3 -11
- package/dist/esm/dockview/components/panel/content.js +1 -1
- package/dist/esm/dockview/components/titlebar/voidContainer.js +1 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +4 -2
- package/dist/esm/dockview/dockviewComponent.js +48 -13
- package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +1 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +1 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.js +1 -1
- package/dist/esm/dockview/dockviewPanel.d.ts +1 -1
- package/dist/esm/dockview/dockviewPanel.js +1 -1
- package/dist/esm/dockview/options.d.ts +2 -2
- package/dist/esm/dockview/options.js +1 -0
- package/dist/esm/dockview/types.d.ts +1 -1
- package/dist/esm/dom.d.ts +3 -0
- package/dist/esm/dom.js +20 -0
- package/dist/esm/gridview/baseComponentGridview.d.ts +5 -2
- package/dist/esm/gridview/baseComponentGridview.js +19 -0
- package/dist/esm/gridview/gridviewComponent.d.ts +3 -4
- package/dist/esm/gridview/gridviewComponent.js +4 -2
- package/dist/esm/gridview/options.d.ts +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/{dnd → overlay}/overlay.d.ts +3 -0
- package/dist/esm/{dnd → overlay}/overlay.js +36 -32
- package/dist/esm/{overlayRenderContainer.d.ts → overlay/overlayRenderContainer.d.ts} +7 -5
- package/dist/esm/{overlayRenderContainer.js → overlay/overlayRenderContainer.js} +39 -6
- package/dist/esm/paneview/options.d.ts +1 -1
- package/dist/esm/paneview/paneviewComponent.d.ts +2 -1
- package/dist/esm/paneview/paneviewComponent.js +19 -2
- package/dist/esm/splitview/options.d.ts +1 -1
- package/dist/esm/splitview/splitview.js +37 -27
- package/dist/esm/splitview/splitviewComponent.d.ts +5 -5
- package/dist/esm/splitview/splitviewComponent.js +19 -2
- package/dist/styles/dockview.css +78 -82
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* dockview-core
|
|
3
|
-
* @version 1.
|
|
3
|
+
* @version 1.16.1
|
|
4
4
|
* @link https://github.com/mathuo/dockview
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
@@ -531,6 +531,26 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
531
531
|
function addTestId(element, id) {
|
|
532
532
|
element.setAttribute('data-testid', id);
|
|
533
533
|
}
|
|
534
|
+
function disableIframePointEvents() {
|
|
535
|
+
const iframes = [
|
|
536
|
+
...getElementsByTagName('iframe'),
|
|
537
|
+
...getElementsByTagName('webview'),
|
|
538
|
+
];
|
|
539
|
+
const original = new WeakMap(); // don't hold onto HTMLElement references longer than required
|
|
540
|
+
for (const iframe of iframes) {
|
|
541
|
+
original.set(iframe, iframe.style.pointerEvents);
|
|
542
|
+
iframe.style.pointerEvents = 'none';
|
|
543
|
+
}
|
|
544
|
+
return {
|
|
545
|
+
release: () => {
|
|
546
|
+
var _a;
|
|
547
|
+
for (const iframe of iframes) {
|
|
548
|
+
iframe.style.pointerEvents = (_a = original.get(iframe)) !== null && _a !== void 0 ? _a : 'auto';
|
|
549
|
+
}
|
|
550
|
+
iframes.splice(0, iframes.length); // don't hold onto HTMLElement references longer than required
|
|
551
|
+
},
|
|
552
|
+
};
|
|
553
|
+
}
|
|
534
554
|
|
|
535
555
|
function tail(arr) {
|
|
536
556
|
if (arr.length === 0) {
|
|
@@ -1053,13 +1073,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
1053
1073
|
for (const item of this.viewItems) {
|
|
1054
1074
|
item.enabled = false;
|
|
1055
1075
|
}
|
|
1056
|
-
const iframes =
|
|
1057
|
-
...getElementsByTagName('iframe'),
|
|
1058
|
-
...getElementsByTagName('webview'),
|
|
1059
|
-
];
|
|
1060
|
-
for (const iframe of iframes) {
|
|
1061
|
-
iframe.style.pointerEvents = 'none';
|
|
1062
|
-
}
|
|
1076
|
+
const iframes = disableIframePointEvents();
|
|
1063
1077
|
const start = this._orientation === exports.Orientation.HORIZONTAL
|
|
1064
1078
|
? event.clientX
|
|
1065
1079
|
: event.clientY;
|
|
@@ -1121,9 +1135,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
1121
1135
|
for (const item of this.viewItems) {
|
|
1122
1136
|
item.enabled = true;
|
|
1123
1137
|
}
|
|
1124
|
-
|
|
1125
|
-
iframe.style.pointerEvents = 'auto';
|
|
1126
|
-
}
|
|
1138
|
+
iframes.release();
|
|
1127
1139
|
this.saveProportions();
|
|
1128
1140
|
document.removeEventListener('pointermove', onPointerMove);
|
|
1129
1141
|
document.removeEventListener('pointerup', end);
|
|
@@ -1290,29 +1302,47 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
1290
1302
|
if (this.viewItems.length === 0) {
|
|
1291
1303
|
return;
|
|
1292
1304
|
}
|
|
1293
|
-
const
|
|
1294
|
-
const
|
|
1305
|
+
const visibleViewItems = this.viewItems.filter((i) => i.visible);
|
|
1306
|
+
const sashCount = Math.max(0, visibleViewItems.length - 1);
|
|
1307
|
+
const marginReducedSize = (this.margin * sashCount) / Math.max(1, visibleViewItems.length);
|
|
1295
1308
|
let totalLeftOffset = 0;
|
|
1296
1309
|
const viewLeftOffsets = [];
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
this.sashes[i].container.style.left = `${offset}px`;
|
|
1303
|
-
this.sashes[i].container.style.top = `0px`;
|
|
1310
|
+
const sashWidth = 4; // hardcoded in css
|
|
1311
|
+
const runningVisiblePanelCount = this.viewItems.reduce((arr, viewItem, i) => {
|
|
1312
|
+
const flag = viewItem.visible ? 1 : 0;
|
|
1313
|
+
if (i === 0) {
|
|
1314
|
+
arr.push(flag);
|
|
1304
1315
|
}
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
this.sashes[i].container.style.top = `${offset}px`;
|
|
1316
|
+
else {
|
|
1317
|
+
arr.push(arr[i - 1] + flag);
|
|
1308
1318
|
}
|
|
1309
|
-
|
|
1319
|
+
return arr;
|
|
1320
|
+
}, []);
|
|
1321
|
+
// calculate both view and cash positions
|
|
1310
1322
|
this.viewItems.forEach((view, i) => {
|
|
1311
|
-
|
|
1312
|
-
|
|
1323
|
+
totalLeftOffset += this.viewItems[i].size;
|
|
1324
|
+
viewLeftOffsets.push(totalLeftOffset);
|
|
1325
|
+
const size = view.visible ? view.size - marginReducedSize : 0;
|
|
1326
|
+
const visiblePanelsBeforeThisView = Math.max(0, runningVisiblePanelCount[i] - 1);
|
|
1327
|
+
const offset = i === 0 || visiblePanelsBeforeThisView === 0
|
|
1313
1328
|
? 0
|
|
1314
1329
|
: viewLeftOffsets[i - 1] +
|
|
1315
|
-
(
|
|
1330
|
+
(visiblePanelsBeforeThisView / sashCount) * marginReducedSize;
|
|
1331
|
+
if (i < this.viewItems.length - 1) {
|
|
1332
|
+
// calculate sash position
|
|
1333
|
+
const newSize = view.visible
|
|
1334
|
+
? offset + size - sashWidth / 2 + this.margin / 2
|
|
1335
|
+
: offset;
|
|
1336
|
+
if (this._orientation === exports.Orientation.HORIZONTAL) {
|
|
1337
|
+
this.sashes[i].container.style.left = `${newSize}px`;
|
|
1338
|
+
this.sashes[i].container.style.top = `0px`;
|
|
1339
|
+
}
|
|
1340
|
+
if (this._orientation === exports.Orientation.VERTICAL) {
|
|
1341
|
+
this.sashes[i].container.style.left = `0px`;
|
|
1342
|
+
this.sashes[i].container.style.top = `${newSize}px`;
|
|
1343
|
+
}
|
|
1344
|
+
}
|
|
1345
|
+
// calculate view position
|
|
1316
1346
|
if (this._orientation === exports.Orientation.HORIZONTAL) {
|
|
1317
1347
|
view.container.style.width = `${size}px`;
|
|
1318
1348
|
view.container.style.left = `${offset}px`;
|
|
@@ -2641,6 +2671,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
2641
2671
|
this.gridview.locked = value;
|
|
2642
2672
|
}
|
|
2643
2673
|
constructor(options) {
|
|
2674
|
+
var _a, _b;
|
|
2644
2675
|
super(document.createElement('div'), options.disableAutoResizing);
|
|
2645
2676
|
this._id = nextLayoutId$1.next();
|
|
2646
2677
|
this._groups = new Map();
|
|
@@ -2654,8 +2685,13 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
2654
2685
|
this.onDidLayoutChange = this._bufferOnDidLayoutChange.onEvent;
|
|
2655
2686
|
this._onDidViewVisibilityChangeMicroTaskQueue = new AsapEvent();
|
|
2656
2687
|
this.onDidViewVisibilityChangeMicroTaskQueue = this._onDidViewVisibilityChangeMicroTaskQueue.onEvent;
|
|
2688
|
+
this.classNames = [];
|
|
2657
2689
|
this.element.style.height = '100%';
|
|
2658
2690
|
this.element.style.width = '100%';
|
|
2691
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
2692
|
+
for (const className of this.classNames) {
|
|
2693
|
+
toggleClass(this.element, className, true);
|
|
2694
|
+
}
|
|
2659
2695
|
options.parentElement.appendChild(this.element);
|
|
2660
2696
|
this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
|
|
2661
2697
|
this.gridview.locked = !!options.locked;
|
|
@@ -2679,6 +2715,18 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
2679
2715
|
isVisible(panel) {
|
|
2680
2716
|
return this.gridview.isViewVisible(getGridLocation(panel.element));
|
|
2681
2717
|
}
|
|
2718
|
+
updateOptions(options) {
|
|
2719
|
+
var _a, _b;
|
|
2720
|
+
if ('className' in options) {
|
|
2721
|
+
for (const className of this.classNames) {
|
|
2722
|
+
toggleClass(this.element, className, false);
|
|
2723
|
+
}
|
|
2724
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
2725
|
+
for (const className of this.classNames) {
|
|
2726
|
+
toggleClass(this.element, className, true);
|
|
2727
|
+
}
|
|
2728
|
+
}
|
|
2729
|
+
}
|
|
2682
2730
|
maximizeGroup(panel) {
|
|
2683
2731
|
this.gridview.maximizeView(panel);
|
|
2684
2732
|
this.doSetGroupActive(panel);
|
|
@@ -2859,12 +2907,6 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
2859
2907
|
constructor(component) {
|
|
2860
2908
|
this.component = component;
|
|
2861
2909
|
}
|
|
2862
|
-
/**
|
|
2863
|
-
* Update configuratable options.
|
|
2864
|
-
*/
|
|
2865
|
-
updateOptions(options) {
|
|
2866
|
-
this.component.updateOptions(options);
|
|
2867
|
-
}
|
|
2868
2910
|
/**
|
|
2869
2911
|
* Removes an existing panel and optionally provide a `Sizing` method
|
|
2870
2912
|
* for the subsequent resize.
|
|
@@ -2918,6 +2960,18 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
2918
2960
|
clear() {
|
|
2919
2961
|
this.component.clear();
|
|
2920
2962
|
}
|
|
2963
|
+
/**
|
|
2964
|
+
* Update configuratable options.
|
|
2965
|
+
*/
|
|
2966
|
+
updateOptions(options) {
|
|
2967
|
+
this.component.updateOptions(options);
|
|
2968
|
+
}
|
|
2969
|
+
/**
|
|
2970
|
+
* Release resources and teardown component. Do not call when using framework versions of dockview.
|
|
2971
|
+
*/
|
|
2972
|
+
dispose() {
|
|
2973
|
+
this.component.dispose();
|
|
2974
|
+
}
|
|
2921
2975
|
}
|
|
2922
2976
|
class PaneviewApi {
|
|
2923
2977
|
/**
|
|
@@ -3045,6 +3099,18 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3045
3099
|
clear() {
|
|
3046
3100
|
this.component.clear();
|
|
3047
3101
|
}
|
|
3102
|
+
/**
|
|
3103
|
+
* Update configuratable options.
|
|
3104
|
+
*/
|
|
3105
|
+
updateOptions(options) {
|
|
3106
|
+
this.component.updateOptions(options);
|
|
3107
|
+
}
|
|
3108
|
+
/**
|
|
3109
|
+
* Release resources and teardown component. Do not call when using framework versions of dockview.
|
|
3110
|
+
*/
|
|
3111
|
+
dispose() {
|
|
3112
|
+
this.component.dispose();
|
|
3113
|
+
}
|
|
3048
3114
|
}
|
|
3049
3115
|
class GridviewApi {
|
|
3050
3116
|
/**
|
|
@@ -3185,6 +3251,15 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3185
3251
|
clear() {
|
|
3186
3252
|
this.component.clear();
|
|
3187
3253
|
}
|
|
3254
|
+
updateOptions(options) {
|
|
3255
|
+
this.component.updateOptions(options);
|
|
3256
|
+
}
|
|
3257
|
+
/**
|
|
3258
|
+
* Release resources and teardown component. Do not call when using framework versions of dockview.
|
|
3259
|
+
*/
|
|
3260
|
+
dispose() {
|
|
3261
|
+
this.component.dispose();
|
|
3262
|
+
}
|
|
3188
3263
|
}
|
|
3189
3264
|
class DockviewApi {
|
|
3190
3265
|
/**
|
|
@@ -3477,6 +3552,15 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3477
3552
|
setGap(gap) {
|
|
3478
3553
|
this.component.updateOptions({ gap });
|
|
3479
3554
|
}
|
|
3555
|
+
updateOptions(options) {
|
|
3556
|
+
this.component.updateOptions(options);
|
|
3557
|
+
}
|
|
3558
|
+
/**
|
|
3559
|
+
* Release resources and teardown component. Do not call when using framework versions of dockview.
|
|
3560
|
+
*/
|
|
3561
|
+
dispose() {
|
|
3562
|
+
this.component.dispose();
|
|
3563
|
+
}
|
|
3480
3564
|
}
|
|
3481
3565
|
|
|
3482
3566
|
class DragHandler extends CompositeDisposable {
|
|
@@ -3499,20 +3583,12 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3499
3583
|
event.preventDefault();
|
|
3500
3584
|
return;
|
|
3501
3585
|
}
|
|
3502
|
-
const iframes =
|
|
3503
|
-
...getElementsByTagName('iframe'),
|
|
3504
|
-
...getElementsByTagName('webview'),
|
|
3505
|
-
];
|
|
3586
|
+
const iframes = disableIframePointEvents();
|
|
3506
3587
|
this.pointerEventsDisposable.value = {
|
|
3507
3588
|
dispose: () => {
|
|
3508
|
-
|
|
3509
|
-
iframe.style.pointerEvents = 'auto';
|
|
3510
|
-
}
|
|
3589
|
+
iframes.release();
|
|
3511
3590
|
},
|
|
3512
3591
|
};
|
|
3513
|
-
for (const iframe of iframes) {
|
|
3514
|
-
iframe.style.pointerEvents = 'none';
|
|
3515
|
-
}
|
|
3516
3592
|
this.el.classList.add('dv-dragged');
|
|
3517
3593
|
setTimeout(() => this.el.classList.remove('dv-dragged'), 0);
|
|
3518
3594
|
this.dataDisposable.value = this.getData(event);
|
|
@@ -4676,7 +4752,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4676
4752
|
this._element.className = 'void-container';
|
|
4677
4753
|
this._element.tabIndex = 0;
|
|
4678
4754
|
this._element.draggable = true;
|
|
4679
|
-
this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, '
|
|
4755
|
+
this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
|
|
4680
4756
|
this.accessor.doSetGroupActive(this.group);
|
|
4681
4757
|
}));
|
|
4682
4758
|
const handler = new GroupDragHandler(this._element, accessor, group);
|
|
@@ -4991,6 +5067,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4991
5067
|
locked: undefined,
|
|
4992
5068
|
disableDnd: undefined,
|
|
4993
5069
|
gap: undefined,
|
|
5070
|
+
className: undefined,
|
|
4994
5071
|
};
|
|
4995
5072
|
return Object.keys(properties);
|
|
4996
5073
|
})();
|
|
@@ -5546,7 +5623,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
5546
5623
|
group: this.groupPanel,
|
|
5547
5624
|
});
|
|
5548
5625
|
this.watermark = watermark;
|
|
5549
|
-
addDisposableListener(this.watermark.element, '
|
|
5626
|
+
addDisposableListener(this.watermark.element, 'pointerdown', () => {
|
|
5550
5627
|
if (!this.isActive) {
|
|
5551
5628
|
this.accessor.doSetGroupActive(this.groupPanel);
|
|
5552
5629
|
}
|
|
@@ -6111,7 +6188,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6111
6188
|
// forward the resize event to the group since if you want to resize a panel
|
|
6112
6189
|
// you are actually just resizing the panels parent which is the group
|
|
6113
6190
|
this.group.api.setSize(event);
|
|
6114
|
-
}), this.api.onDidRendererChange((
|
|
6191
|
+
}), this.api.onDidRendererChange(() => {
|
|
6115
6192
|
this.group.model.rerender(this);
|
|
6116
6193
|
}));
|
|
6117
6194
|
}
|
|
@@ -6447,17 +6524,30 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6447
6524
|
}
|
|
6448
6525
|
}
|
|
6449
6526
|
|
|
6450
|
-
const
|
|
6451
|
-
|
|
6452
|
-
|
|
6453
|
-
|
|
6454
|
-
|
|
6527
|
+
const DEFAULT_OVERLAY_Z_INDEX = 999;
|
|
6528
|
+
class AriaLevelTracker {
|
|
6529
|
+
constructor() {
|
|
6530
|
+
this._orderedList = [];
|
|
6531
|
+
}
|
|
6532
|
+
push(element) {
|
|
6533
|
+
this._orderedList = [
|
|
6534
|
+
...this._orderedList.filter((item) => item !== element),
|
|
6535
|
+
element,
|
|
6536
|
+
];
|
|
6537
|
+
this.update();
|
|
6538
|
+
}
|
|
6539
|
+
destroy(element) {
|
|
6540
|
+
this._orderedList = this._orderedList.filter((item) => item !== element);
|
|
6541
|
+
this.update();
|
|
6542
|
+
}
|
|
6543
|
+
update() {
|
|
6544
|
+
for (let i = 0; i < this._orderedList.length; i++) {
|
|
6545
|
+
this._orderedList[i].setAttribute('aria-level', `${i}`);
|
|
6546
|
+
this._orderedList[i].style.zIndex = `${DEFAULT_OVERLAY_Z_INDEX + i * 2}`;
|
|
6455
6547
|
}
|
|
6456
|
-
toggleClass(element, 'dv-bring-to-front', true);
|
|
6457
|
-
previous = element;
|
|
6458
6548
|
}
|
|
6459
|
-
|
|
6460
|
-
|
|
6549
|
+
}
|
|
6550
|
+
const arialLevelTracker = new AriaLevelTracker();
|
|
6461
6551
|
class Overlay extends CompositeDisposable {
|
|
6462
6552
|
set minimumInViewportWidth(value) {
|
|
6463
6553
|
this.options.minimumInViewportWidth = value;
|
|
@@ -6465,6 +6555,9 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6465
6555
|
set minimumInViewportHeight(value) {
|
|
6466
6556
|
this.options.minimumInViewportHeight = value;
|
|
6467
6557
|
}
|
|
6558
|
+
get element() {
|
|
6559
|
+
return this._element;
|
|
6560
|
+
}
|
|
6468
6561
|
constructor(options) {
|
|
6469
6562
|
super();
|
|
6470
6563
|
this.options = options;
|
|
@@ -6487,6 +6580,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6487
6580
|
this.options.container.appendChild(this._element);
|
|
6488
6581
|
// if input bad resize within acceptable boundaries
|
|
6489
6582
|
this.setBounds(Object.assign(Object.assign(Object.assign(Object.assign({ height: this.options.height, width: this.options.width }, ('top' in this.options && { top: this.options.top })), ('bottom' in this.options && { bottom: this.options.bottom })), ('left' in this.options && { left: this.options.left })), ('right' in this.options && { right: this.options.right })));
|
|
6583
|
+
arialLevelTracker.push(this._element);
|
|
6584
|
+
}
|
|
6585
|
+
bringToFront() {
|
|
6586
|
+
arialLevelTracker.push(this._element);
|
|
6490
6587
|
}
|
|
6491
6588
|
setBounds(bounds = {}) {
|
|
6492
6589
|
if (typeof bounds.height === 'number') {
|
|
@@ -6574,18 +6671,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6574
6671
|
const move = new MutableDisposable();
|
|
6575
6672
|
const track = () => {
|
|
6576
6673
|
let offset = null;
|
|
6577
|
-
const iframes =
|
|
6578
|
-
...getElementsByTagName('iframe'),
|
|
6579
|
-
...getElementsByTagName('webview'),
|
|
6580
|
-
];
|
|
6581
|
-
for (const iframe of iframes) {
|
|
6582
|
-
iframe.style.pointerEvents = 'none';
|
|
6583
|
-
}
|
|
6674
|
+
const iframes = disableIframePointEvents();
|
|
6584
6675
|
move.value = new CompositeDisposable({
|
|
6585
6676
|
dispose: () => {
|
|
6586
|
-
|
|
6587
|
-
iframe.style.pointerEvents = 'auto';
|
|
6588
|
-
}
|
|
6677
|
+
iframes.release();
|
|
6589
6678
|
},
|
|
6590
6679
|
}, addDisposableWindowListener(window, 'mousemove', (e) => {
|
|
6591
6680
|
const containerRect = this.options.container.getBoundingClientRect();
|
|
@@ -6654,9 +6743,8 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6654
6743
|
track();
|
|
6655
6744
|
}
|
|
6656
6745
|
}), addDisposableListener(this.options.content, 'mousedown', () => {
|
|
6657
|
-
|
|
6746
|
+
arialLevelTracker.push(this._element);
|
|
6658
6747
|
}, true));
|
|
6659
|
-
bringElementToFront(this._element);
|
|
6660
6748
|
if (options.inDragMode) {
|
|
6661
6749
|
track();
|
|
6662
6750
|
}
|
|
@@ -6669,13 +6757,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6669
6757
|
this.addDisposables(move, addDisposableListener(resizeHandleElement, 'mousedown', (e) => {
|
|
6670
6758
|
e.preventDefault();
|
|
6671
6759
|
let startPosition = null;
|
|
6672
|
-
const iframes =
|
|
6673
|
-
...getElementsByTagName('iframe'),
|
|
6674
|
-
...getElementsByTagName('webview'),
|
|
6675
|
-
];
|
|
6676
|
-
for (const iframe of iframes) {
|
|
6677
|
-
iframe.style.pointerEvents = 'none';
|
|
6678
|
-
}
|
|
6760
|
+
const iframes = disableIframePointEvents();
|
|
6679
6761
|
move.value = new CompositeDisposable(addDisposableWindowListener(window, 'mousemove', (e) => {
|
|
6680
6762
|
const containerRect = this.options.container.getBoundingClientRect();
|
|
6681
6763
|
const overlayRect = this._element.getBoundingClientRect();
|
|
@@ -6798,9 +6880,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6798
6880
|
this.setBounds(bounds);
|
|
6799
6881
|
}), {
|
|
6800
6882
|
dispose: () => {
|
|
6801
|
-
|
|
6802
|
-
iframe.style.pointerEvents = 'auto';
|
|
6803
|
-
}
|
|
6883
|
+
iframes.release();
|
|
6804
6884
|
},
|
|
6805
6885
|
}, addDisposableWindowListener(window, 'mouseup', () => {
|
|
6806
6886
|
move.dispose();
|
|
@@ -6821,6 +6901,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6821
6901
|
return 0;
|
|
6822
6902
|
}
|
|
6823
6903
|
dispose() {
|
|
6904
|
+
arialLevelTracker.destroy(this._element);
|
|
6824
6905
|
this._element.remove();
|
|
6825
6906
|
super.dispose();
|
|
6826
6907
|
}
|
|
@@ -6849,9 +6930,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6849
6930
|
return element;
|
|
6850
6931
|
}
|
|
6851
6932
|
class OverlayRenderContainer extends CompositeDisposable {
|
|
6852
|
-
constructor(element) {
|
|
6933
|
+
constructor(element, accessor) {
|
|
6853
6934
|
super();
|
|
6854
6935
|
this.element = element;
|
|
6936
|
+
this.accessor = accessor;
|
|
6855
6937
|
this.map = {};
|
|
6856
6938
|
this._disposed = false;
|
|
6857
6939
|
this.addDisposables(exports.DockviewDisposable.from(() => {
|
|
@@ -6907,7 +6989,35 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6907
6989
|
}
|
|
6908
6990
|
focusContainer.style.display = panel.api.isVisible ? '' : 'none';
|
|
6909
6991
|
};
|
|
6910
|
-
const
|
|
6992
|
+
const observerDisposable = new MutableDisposable();
|
|
6993
|
+
const correctLayerPosition = () => {
|
|
6994
|
+
if (panel.api.location.type === 'floating') {
|
|
6995
|
+
queueMicrotask(() => {
|
|
6996
|
+
const floatingGroup = this.accessor.floatingGroups.find((group) => group.group === panel.api.group);
|
|
6997
|
+
if (!floatingGroup) {
|
|
6998
|
+
return;
|
|
6999
|
+
}
|
|
7000
|
+
const element = floatingGroup.overlay.element;
|
|
7001
|
+
const update = () => {
|
|
7002
|
+
const level = Number(element.getAttribute('aria-level'));
|
|
7003
|
+
focusContainer.style.zIndex = `${DEFAULT_OVERLAY_Z_INDEX + level * 2 + 1}`;
|
|
7004
|
+
};
|
|
7005
|
+
const observer = new MutationObserver(() => {
|
|
7006
|
+
update();
|
|
7007
|
+
});
|
|
7008
|
+
observerDisposable.value = exports.DockviewDisposable.from(() => observer.disconnect());
|
|
7009
|
+
observer.observe(element, {
|
|
7010
|
+
attributeFilter: ['aria-level'],
|
|
7011
|
+
attributes: true,
|
|
7012
|
+
});
|
|
7013
|
+
update();
|
|
7014
|
+
});
|
|
7015
|
+
}
|
|
7016
|
+
else {
|
|
7017
|
+
focusContainer.style.zIndex = ''; // reset the z-index, perhaps CSS will take over here
|
|
7018
|
+
}
|
|
7019
|
+
};
|
|
7020
|
+
const disposable = new CompositeDisposable(observerDisposable,
|
|
6911
7021
|
/**
|
|
6912
7022
|
* since container is positioned absoutely we must explicitly forward
|
|
6913
7023
|
* the dnd events for the expect behaviours to continue to occur in terms of dnd
|
|
@@ -6931,7 +7041,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6931
7041
|
onDragOver: (e) => {
|
|
6932
7042
|
referenceContainer.dropTarget.dnd.onDragOver(e);
|
|
6933
7043
|
},
|
|
6934
|
-
}), panel.api.onDidVisibilityChange((
|
|
7044
|
+
}), panel.api.onDidVisibilityChange(() => {
|
|
6935
7045
|
/**
|
|
6936
7046
|
* Control the visibility of the content, however even when not visible (display: none)
|
|
6937
7047
|
* the content is still maintained within the DOM hence DOM specific attributes
|
|
@@ -6943,6 +7053,8 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6943
7053
|
return;
|
|
6944
7054
|
}
|
|
6945
7055
|
resize();
|
|
7056
|
+
}), panel.api.onDidLocationChange(() => {
|
|
7057
|
+
correctLayerPosition();
|
|
6946
7058
|
}));
|
|
6947
7059
|
this.map[panel.api.id].destroy = exports.DockviewDisposable.from(() => {
|
|
6948
7060
|
var _a;
|
|
@@ -6951,6 +7063,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6951
7063
|
}
|
|
6952
7064
|
(_a = focusContainer.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(focusContainer);
|
|
6953
7065
|
});
|
|
7066
|
+
correctLayerPosition();
|
|
6954
7067
|
queueMicrotask(() => {
|
|
6955
7068
|
if (this.isDisposed) {
|
|
6956
7069
|
return;
|
|
@@ -7199,7 +7312,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7199
7312
|
get gap() {
|
|
7200
7313
|
return this.gridview.margin;
|
|
7201
7314
|
}
|
|
7202
|
-
|
|
7315
|
+
get floatingGroups() {
|
|
7316
|
+
return this._floatingGroups;
|
|
7317
|
+
}
|
|
7318
|
+
constructor(parentElement, options) {
|
|
7203
7319
|
var _a;
|
|
7204
7320
|
super({
|
|
7205
7321
|
proportionalLayout: true,
|
|
@@ -7207,10 +7323,11 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7207
7323
|
styles: options.hideBorders
|
|
7208
7324
|
? { separatorBorder: 'transparent' }
|
|
7209
7325
|
: undefined,
|
|
7210
|
-
parentElement:
|
|
7326
|
+
parentElement: parentElement,
|
|
7211
7327
|
disableAutoResizing: options.disableAutoResizing,
|
|
7212
7328
|
locked: options.locked,
|
|
7213
7329
|
margin: options.gap,
|
|
7330
|
+
className: options.className,
|
|
7214
7331
|
});
|
|
7215
7332
|
this.nextGroupId = sequentialNumberGenerator();
|
|
7216
7333
|
this._deserializer = new DefaultDockviewDeserialzier(this);
|
|
@@ -7246,10 +7363,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7246
7363
|
this._onDidActiveGroupChange = new Emitter();
|
|
7247
7364
|
this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
|
|
7248
7365
|
this._moving = false;
|
|
7249
|
-
const gready = document.createElement('div');
|
|
7250
|
-
gready.className = 'dv-overlay-render-container';
|
|
7251
|
-
this.gridview.element.appendChild(gready);
|
|
7252
|
-
this.overlayRenderContainer = new OverlayRenderContainer(
|
|
7366
|
+
// const gready = document.createElement('div');
|
|
7367
|
+
// gready.className = 'dv-overlay-render-container';
|
|
7368
|
+
// this.gridview.element.appendChild(gready);
|
|
7369
|
+
this.overlayRenderContainer = new OverlayRenderContainer(this.gridview.element, this);
|
|
7253
7370
|
toggleClass(this.gridview.element, 'dv-dockview', true);
|
|
7254
7371
|
toggleClass(this.element, 'dv-debug', !!options.debug);
|
|
7255
7372
|
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._onUnhandledDragOverEvent, this.onDidViewVisibilityChangeMicroTaskQueue(() => {
|
|
@@ -7415,7 +7532,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7415
7532
|
}
|
|
7416
7533
|
const gready = document.createElement('div');
|
|
7417
7534
|
gready.className = 'dv-overlay-render-container';
|
|
7418
|
-
const overlayRenderContainer = new OverlayRenderContainer(gready);
|
|
7535
|
+
const overlayRenderContainer = new OverlayRenderContainer(gready, this);
|
|
7419
7536
|
const referenceGroup = itemToPopout instanceof DockviewPanel
|
|
7420
7537
|
? itemToPopout.group
|
|
7421
7538
|
: itemToPopout;
|
|
@@ -7564,7 +7681,6 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7564
7681
|
}
|
|
7565
7682
|
}
|
|
7566
7683
|
}
|
|
7567
|
-
group.model.location = { type: 'floating' };
|
|
7568
7684
|
function getAnchoredBox() {
|
|
7569
7685
|
if (options === null || options === void 0 ? void 0 : options.position) {
|
|
7570
7686
|
const result = {};
|
|
@@ -7631,10 +7747,14 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7631
7747
|
: false,
|
|
7632
7748
|
});
|
|
7633
7749
|
const floatingGroupPanel = new DockviewFloatingGroupPanel(group, overlay);
|
|
7634
|
-
const disposable =
|
|
7750
|
+
const disposable = new CompositeDisposable(group.api.onDidActiveChange((event) => {
|
|
7751
|
+
if (event.isActive) {
|
|
7752
|
+
overlay.bringToFront();
|
|
7753
|
+
}
|
|
7754
|
+
}), watchElementResize(group.element, (entry) => {
|
|
7635
7755
|
const { width, height } = entry.contentRect;
|
|
7636
7756
|
group.layout(width, height); // let the group know it's size is changing so it can fire events to the panel
|
|
7637
|
-
});
|
|
7757
|
+
}));
|
|
7638
7758
|
floatingGroupPanel.addDisposables(overlay.onDidChange(() => {
|
|
7639
7759
|
// this is either a resize or a move
|
|
7640
7760
|
// to inform the panels .layout(...) the group with it's current size
|
|
@@ -7650,12 +7770,13 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7650
7770
|
}), {
|
|
7651
7771
|
dispose: () => {
|
|
7652
7772
|
disposable.dispose();
|
|
7653
|
-
group.model.location = { type: 'grid' };
|
|
7654
7773
|
remove(this._floatingGroups, floatingGroupPanel);
|
|
7774
|
+
group.model.location = { type: 'grid' };
|
|
7655
7775
|
this.updateWatermark();
|
|
7656
7776
|
},
|
|
7657
7777
|
});
|
|
7658
7778
|
this._floatingGroups.push(floatingGroupPanel);
|
|
7779
|
+
group.model.location = { type: 'floating' };
|
|
7659
7780
|
if (!(options === null || options === void 0 ? void 0 : options.skipActiveGroup)) {
|
|
7660
7781
|
this.doSetGroupAndPanelActive(group);
|
|
7661
7782
|
}
|
|
@@ -7694,6 +7815,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7694
7815
|
}
|
|
7695
7816
|
updateOptions(options) {
|
|
7696
7817
|
var _a, _b;
|
|
7818
|
+
super.updateOptions(options);
|
|
7697
7819
|
const changed_floatingGroupBounds = 'floatingGroupBounds' in options &&
|
|
7698
7820
|
options.floatingGroupBounds !== this.options.floatingGroupBounds;
|
|
7699
7821
|
const changed_rootOverlayOptions = 'rootOverlayModel' in options &&
|
|
@@ -8237,6 +8359,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8237
8359
|
this._groups.delete(group.id);
|
|
8238
8360
|
this._onDidRemoveGroup.fire(group);
|
|
8239
8361
|
}
|
|
8362
|
+
remove(this._popoutGroups, selectedGroup);
|
|
8240
8363
|
const removedGroup = selectedGroup.disposable.dispose();
|
|
8241
8364
|
if (!(options === null || options === void 0 ? void 0 : options.skipPopoutReturn) && removedGroup) {
|
|
8242
8365
|
this.doAddGroup(removedGroup, [0]);
|
|
@@ -8348,6 +8471,31 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8348
8471
|
return;
|
|
8349
8472
|
}
|
|
8350
8473
|
}
|
|
8474
|
+
if (sourceGroup.api.location.type === 'popout') {
|
|
8475
|
+
/**
|
|
8476
|
+
* the source group is a popout group with a single panel
|
|
8477
|
+
*
|
|
8478
|
+
* 1. remove the panel from the group without triggering any events
|
|
8479
|
+
* 2. remove the popout group
|
|
8480
|
+
* 3. create a new group at the requested location and add that panel
|
|
8481
|
+
*/
|
|
8482
|
+
const popoutGroup = this._popoutGroups.find((group) => group.popoutGroup === sourceGroup);
|
|
8483
|
+
const removedPanel = this.movingLock(() => popoutGroup.popoutGroup.model.removePanel(popoutGroup.popoutGroup.panels[0], {
|
|
8484
|
+
skipSetActive: true,
|
|
8485
|
+
skipSetActiveGroup: true,
|
|
8486
|
+
}));
|
|
8487
|
+
this.doRemoveGroup(sourceGroup, { skipActive: true });
|
|
8488
|
+
const newGroup = this.createGroupAtLocation(targetLocation);
|
|
8489
|
+
this.movingLock(() => newGroup.model.openPanel(removedPanel, {
|
|
8490
|
+
skipSetActive: true,
|
|
8491
|
+
}));
|
|
8492
|
+
this.doSetGroupAndPanelActive(newGroup);
|
|
8493
|
+
this._onDidMovePanel.fire({
|
|
8494
|
+
panel: this.getGroupPanel(sourceItemId),
|
|
8495
|
+
from: sourceGroup,
|
|
8496
|
+
});
|
|
8497
|
+
return;
|
|
8498
|
+
}
|
|
8351
8499
|
// source group will become empty so delete the group
|
|
8352
8500
|
const targetGroup = this.movingLock(() => this.doRemoveGroup(sourceGroup, {
|
|
8353
8501
|
skipActive: true,
|
|
@@ -8579,13 +8727,14 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8579
8727
|
set deserializer(value) {
|
|
8580
8728
|
this._deserializer = value;
|
|
8581
8729
|
}
|
|
8582
|
-
constructor(options) {
|
|
8730
|
+
constructor(parentElement, options) {
|
|
8583
8731
|
super({
|
|
8584
|
-
parentElement:
|
|
8732
|
+
parentElement: parentElement,
|
|
8585
8733
|
proportionalLayout: options.proportionalLayout,
|
|
8586
8734
|
orientation: options.orientation,
|
|
8587
8735
|
styles: options.styles,
|
|
8588
8736
|
disableAutoResizing: options.disableAutoResizing,
|
|
8737
|
+
className: options.className,
|
|
8589
8738
|
});
|
|
8590
8739
|
this._onDidLayoutfromJSON = new Emitter();
|
|
8591
8740
|
this.onDidLayoutFromJSON = this._onDidLayoutfromJSON.event;
|
|
@@ -8611,6 +8760,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8611
8760
|
}
|
|
8612
8761
|
}
|
|
8613
8762
|
updateOptions(options) {
|
|
8763
|
+
super.updateOptions(options);
|
|
8614
8764
|
const hasOrientationChanged = typeof options.orientation === 'string' &&
|
|
8615
8765
|
this.gridview.orientation !== options.orientation;
|
|
8616
8766
|
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
@@ -8877,8 +9027,9 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8877
9027
|
? this.splitview.size
|
|
8878
9028
|
: this.splitview.orthogonalSize;
|
|
8879
9029
|
}
|
|
8880
|
-
constructor(options) {
|
|
8881
|
-
|
|
9030
|
+
constructor(parentElement, options) {
|
|
9031
|
+
var _a, _b;
|
|
9032
|
+
super(parentElement, options.disableAutoResizing);
|
|
8882
9033
|
this._splitviewChangeDisposable = new MutableDisposable();
|
|
8883
9034
|
this._panels = new Map();
|
|
8884
9035
|
this._onDidLayoutfromJSON = new Emitter();
|
|
@@ -8889,6 +9040,11 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8889
9040
|
this.onDidRemoveView = this._onDidRemoveView.event;
|
|
8890
9041
|
this._onDidLayoutChange = new Emitter();
|
|
8891
9042
|
this.onDidLayoutChange = this._onDidLayoutChange.event;
|
|
9043
|
+
this.classNames = [];
|
|
9044
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
9045
|
+
for (const className of this.classNames) {
|
|
9046
|
+
toggleClass(this.element, className, true);
|
|
9047
|
+
}
|
|
8892
9048
|
this._options = options;
|
|
8893
9049
|
if (!options.components) {
|
|
8894
9050
|
options.components = {};
|
|
@@ -8900,6 +9056,16 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
8900
9056
|
this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
|
|
8901
9057
|
}
|
|
8902
9058
|
updateOptions(options) {
|
|
9059
|
+
var _a, _b;
|
|
9060
|
+
if ('className' in options) {
|
|
9061
|
+
for (const className of this.classNames) {
|
|
9062
|
+
toggleClass(this.element, className, false);
|
|
9063
|
+
}
|
|
9064
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
9065
|
+
for (const className of this.classNames) {
|
|
9066
|
+
toggleClass(this.element, className, true);
|
|
9067
|
+
}
|
|
9068
|
+
}
|
|
8903
9069
|
const hasOrientationChanged = typeof options.orientation === 'string' &&
|
|
8904
9070
|
this.options.orientation !== options.orientation;
|
|
8905
9071
|
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
@@ -9201,8 +9367,9 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
9201
9367
|
get options() {
|
|
9202
9368
|
return this._options;
|
|
9203
9369
|
}
|
|
9204
|
-
constructor(options) {
|
|
9205
|
-
|
|
9370
|
+
constructor(parentElement, options) {
|
|
9371
|
+
var _a, _b;
|
|
9372
|
+
super(parentElement, options.disableAutoResizing);
|
|
9206
9373
|
this._id = nextLayoutId.next();
|
|
9207
9374
|
this._disposable = new MutableDisposable();
|
|
9208
9375
|
this._viewDisposables = new Map();
|
|
@@ -9216,7 +9383,12 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
9216
9383
|
this.onDidAddView = this._onDidAddView.event;
|
|
9217
9384
|
this._onDidRemoveView = new Emitter();
|
|
9218
9385
|
this.onDidRemoveView = this._onDidRemoveView.event;
|
|
9386
|
+
this.classNames = [];
|
|
9219
9387
|
this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
|
|
9388
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
9389
|
+
for (const className of this.classNames) {
|
|
9390
|
+
toggleClass(this.element, className, true);
|
|
9391
|
+
}
|
|
9220
9392
|
this._options = options;
|
|
9221
9393
|
if (!options.components) {
|
|
9222
9394
|
options.components = {};
|
|
@@ -9238,6 +9410,16 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
9238
9410
|
//noop
|
|
9239
9411
|
}
|
|
9240
9412
|
updateOptions(options) {
|
|
9413
|
+
var _a, _b;
|
|
9414
|
+
if ('className' in options) {
|
|
9415
|
+
for (const className of this.classNames) {
|
|
9416
|
+
toggleClass(this.element, className, false);
|
|
9417
|
+
}
|
|
9418
|
+
this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
|
|
9419
|
+
for (const className of this.classNames) {
|
|
9420
|
+
toggleClass(this.element, className, true);
|
|
9421
|
+
}
|
|
9422
|
+
}
|
|
9241
9423
|
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
9242
9424
|
}
|
|
9243
9425
|
addPanel(options) {
|
|
@@ -9531,6 +9713,23 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
9531
9713
|
}
|
|
9532
9714
|
}
|
|
9533
9715
|
|
|
9716
|
+
function createDockview(element, options) {
|
|
9717
|
+
const component = new DockviewComponent(element, options);
|
|
9718
|
+
return component.api;
|
|
9719
|
+
}
|
|
9720
|
+
function createSplitview(element, options) {
|
|
9721
|
+
const component = new SplitviewComponent(element, options);
|
|
9722
|
+
return new SplitviewApi(component);
|
|
9723
|
+
}
|
|
9724
|
+
function createGridview(element, options) {
|
|
9725
|
+
const component = new GridviewComponent(element, options);
|
|
9726
|
+
return new GridviewApi(component);
|
|
9727
|
+
}
|
|
9728
|
+
function createPaneview(element, options) {
|
|
9729
|
+
const component = new PaneviewComponent(element, options);
|
|
9730
|
+
return new PaneviewApi(component);
|
|
9731
|
+
}
|
|
9732
|
+
|
|
9534
9733
|
exports.BaseGrid = BaseGrid;
|
|
9535
9734
|
exports.ContentContainer = ContentContainer;
|
|
9536
9735
|
exports.DefaultDockviewDeserialzier = DefaultDockviewDeserialzier;
|
|
@@ -9567,6 +9766,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
9567
9766
|
exports.Tab = Tab;
|
|
9568
9767
|
exports.WillShowOverlayLocationEvent = WillShowOverlayLocationEvent;
|
|
9569
9768
|
exports.createComponent = createComponent;
|
|
9769
|
+
exports.createDockview = createDockview;
|
|
9770
|
+
exports.createGridview = createGridview;
|
|
9771
|
+
exports.createPaneview = createPaneview;
|
|
9772
|
+
exports.createSplitview = createSplitview;
|
|
9570
9773
|
exports.directionToPosition = directionToPosition;
|
|
9571
9774
|
exports.getDirectionOrientation = getDirectionOrientation;
|
|
9572
9775
|
exports.getGridLocation = getGridLocation;
|