dockview 1.1.0 → 1.3.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 +17 -15
- package/dist/cjs/api/component.api.js +22 -22
- package/dist/cjs/api/component.api.js.map +1 -1
- package/dist/cjs/dnd/abstractDragHandler.d.ts +1 -1
- package/dist/cjs/dnd/abstractDragHandler.js +2 -3
- package/dist/cjs/dnd/abstractDragHandler.js.map +1 -1
- package/dist/cjs/dnd/droptarget.js +3 -3
- package/dist/cjs/dnd/droptarget.js.map +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js.map +1 -1
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +3 -3
- package/dist/cjs/dockview/components/watermark/watermark.js +4 -4
- package/dist/cjs/dockview/components/watermark/watermark.js.map +1 -1
- package/dist/cjs/dockview/deserializer.js.map +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +8 -5
- package/dist/cjs/dockview/dockviewComponent.js +60 -41
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +1 -0
- package/dist/cjs/dockview/dockviewGroupPanel.js +8 -0
- package/dist/cjs/dockview/dockviewGroupPanel.js.map +1 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +3 -20
- package/dist/cjs/gridview/baseComponentGridview.js +35 -43
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/basePanelView.js +2 -0
- package/dist/cjs/gridview/basePanelView.js.map +1 -1
- package/dist/cjs/gridview/branchNode.js +2 -2
- package/dist/cjs/gridview/branchNode.js.map +1 -1
- package/dist/cjs/gridview/gridview.js +3 -2
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts +3 -9
- package/dist/cjs/gridview/gridviewComponent.js +30 -18
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/gridview/leafNode.js +1 -1
- package/dist/cjs/gridview/leafNode.js.map +1 -1
- package/dist/cjs/groupview/groupPanel.d.ts +1 -0
- package/dist/cjs/groupview/groupview.d.ts +3 -2
- package/dist/cjs/groupview/groupview.js +15 -6
- package/dist/cjs/groupview/groupview.js.map +1 -1
- package/dist/cjs/groupview/panel/content.d.ts +1 -1
- package/dist/cjs/groupview/panel/content.js +1 -1
- package/dist/cjs/groupview/panel/content.js.map +1 -1
- package/dist/cjs/hostedContainer.js +2 -2
- package/dist/cjs/hostedContainer.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +8 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/panel/types.d.ts +1 -0
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +1 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js +1 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js.map +1 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js +1 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js.map +1 -1
- package/dist/cjs/paneview/paneview.d.ts +3 -1
- package/dist/cjs/paneview/paneview.js +12 -6
- package/dist/cjs/paneview/paneview.js.map +1 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +12 -5
- package/dist/cjs/paneview/paneviewComponent.js +68 -16
- package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
- package/dist/cjs/react/dockview/components.js +5 -1
- package/dist/cjs/react/dockview/components.js.map +1 -1
- package/dist/cjs/react/dockview/dockview.js +32 -10
- package/dist/cjs/react/dockview/dockview.js.map +1 -1
- package/dist/cjs/react/dockview/reactContentPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactContentPart.js +2 -13
- package/dist/cjs/react/dockview/reactContentPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactHeaderPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactHeaderPart.js +2 -2
- package/dist/cjs/react/dockview/reactHeaderPart.js.map +1 -1
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +2 -2
- package/dist/cjs/react/dockview/reactWatermarkPart.js +2 -2
- package/dist/cjs/react/dockview/reactWatermarkPart.js.map +1 -1
- package/dist/cjs/react/dockview/v2/reactContentRenderer.d.ts +2 -2
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js +2 -2
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js.map +1 -1
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.d.ts +2 -2
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.js +2 -2
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.js.map +1 -1
- package/dist/cjs/react/gridview/gridview.js +9 -2
- package/dist/cjs/react/gridview/gridview.js.map +1 -1
- package/dist/cjs/react/gridview/view.d.ts +3 -2
- package/dist/cjs/react/gridview/view.js.map +1 -1
- package/dist/cjs/react/index.js +5 -1
- package/dist/cjs/react/index.js.map +1 -1
- package/dist/cjs/react/paneview/paneview.js +6 -2
- package/dist/cjs/react/paneview/paneview.js.map +1 -1
- package/dist/cjs/react/react.js +5 -1
- package/dist/cjs/react/react.js.map +1 -1
- package/dist/cjs/react/splitview/splitview.js +8 -2
- package/dist/cjs/react/splitview/splitview.js.map +1 -1
- package/dist/cjs/splitview/core/splitview.js +1 -1
- package/dist/cjs/splitview/core/splitview.js.map +1 -1
- package/dist/cjs/splitview/splitviewComponent.d.ts +5 -3
- package/dist/cjs/splitview/splitviewComponent.js +55 -16
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/dockview.amd.js +316 -312
- package/dist/dockview.amd.min.js +2 -2
- package/dist/dockview.amd.min.noStyle.js +2 -2
- package/dist/dockview.amd.noStyle.js +315 -311
- package/dist/dockview.cjs.js +316 -312
- package/dist/dockview.esm.js +316 -306
- package/dist/dockview.esm.min.js +2 -2
- package/dist/dockview.js +316 -312
- package/dist/dockview.min.js +2 -2
- package/dist/dockview.min.noStyle.js +2 -2
- package/dist/dockview.noStyle.js +315 -311
- package/dist/esm/api/component.api.d.ts +17 -15
- package/dist/esm/api/component.api.js +14 -14
- package/dist/esm/dnd/abstractDragHandler.d.ts +1 -1
- package/dist/esm/dnd/abstractDragHandler.js +2 -3
- package/dist/esm/dnd/droptarget.js +3 -3
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +1 -1
- package/dist/esm/dockview/components/tab/defaultTab.js +1 -1
- package/dist/esm/dockview/components/watermark/watermark.d.ts +3 -3
- package/dist/esm/dockview/components/watermark/watermark.js +4 -4
- package/dist/esm/dockview/dockviewComponent.d.ts +8 -5
- package/dist/esm/dockview/dockviewComponent.js +34 -38
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +1 -0
- package/dist/esm/dockview/dockviewGroupPanel.js +4 -0
- package/dist/esm/gridview/baseComponentGridview.d.ts +3 -20
- package/dist/esm/gridview/baseComponentGridview.js +13 -43
- package/dist/esm/gridview/basePanelView.js +2 -0
- package/dist/esm/gridview/branchNode.js +2 -2
- package/dist/esm/gridview/gridview.js +2 -1
- package/dist/esm/gridview/gridviewComponent.d.ts +3 -9
- package/dist/esm/gridview/gridviewComponent.js +9 -19
- package/dist/esm/groupview/groupPanel.d.ts +1 -0
- package/dist/esm/groupview/groupview.d.ts +3 -2
- package/dist/esm/groupview/groupview.js +8 -3
- package/dist/esm/groupview/panel/content.d.ts +1 -1
- package/dist/esm/groupview/panel/content.js +1 -1
- package/dist/esm/hostedContainer.js +2 -2
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +1 -2
- package/dist/esm/panel/types.d.ts +1 -0
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.js +1 -1
- package/dist/esm/paneview/draggablePaneviewPanel.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +3 -1
- package/dist/esm/paneview/paneview.js +9 -5
- package/dist/esm/paneview/paneviewComponent.d.ts +12 -5
- package/dist/esm/paneview/paneviewComponent.js +34 -15
- package/dist/esm/react/dockview/dockview.js +27 -9
- package/dist/esm/react/dockview/reactContentPart.d.ts +2 -2
- package/dist/esm/react/dockview/reactContentPart.js +2 -13
- package/dist/esm/react/dockview/reactHeaderPart.d.ts +2 -2
- package/dist/esm/react/dockview/reactHeaderPart.js +2 -2
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +2 -2
- package/dist/esm/react/dockview/reactWatermarkPart.js +2 -2
- package/dist/esm/react/dockview/v2/reactContentRenderer.d.ts +2 -2
- package/dist/esm/react/dockview/v2/reactContentRenderer.js +2 -2
- package/dist/esm/react/dockview/v2/webviewContentRenderer.d.ts +2 -2
- package/dist/esm/react/dockview/v2/webviewContentRenderer.js +2 -2
- package/dist/esm/react/gridview/gridview.js +4 -1
- package/dist/esm/react/gridview/view.d.ts +3 -2
- package/dist/esm/react/paneview/paneview.js +1 -1
- package/dist/esm/react/splitview/splitview.js +3 -1
- package/dist/esm/splitview/core/splitview.js +1 -1
- package/dist/esm/splitview/splitviewComponent.d.ts +5 -3
- package/dist/esm/splitview/splitviewComponent.js +22 -15
- package/dist/styles/dockview.css +10 -10
- package/package.json +13 -13
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* dockview
|
|
3
|
-
* @version 1.1
|
|
3
|
+
* @version 1.3.1
|
|
4
4
|
* @link https://github.com/mathuo/dockview
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
@@ -27,6 +27,76 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
27
27
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
28
28
|
var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
|
|
29
29
|
|
|
30
|
+
class TransferObject {
|
|
31
|
+
constructor() {
|
|
32
|
+
//
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
class PanelTransfer extends TransferObject {
|
|
36
|
+
constructor(viewId, groupId, panelId) {
|
|
37
|
+
super();
|
|
38
|
+
this.viewId = viewId;
|
|
39
|
+
this.groupId = groupId;
|
|
40
|
+
this.panelId = panelId;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
class PaneTransfer extends TransferObject {
|
|
44
|
+
constructor(viewId, paneId) {
|
|
45
|
+
super();
|
|
46
|
+
this.viewId = viewId;
|
|
47
|
+
this.paneId = paneId;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* A singleton to store transfer data during drag & drop operations that are only valid within the application.
|
|
52
|
+
*/
|
|
53
|
+
class LocalSelectionTransfer {
|
|
54
|
+
constructor() {
|
|
55
|
+
// protect against external instantiation
|
|
56
|
+
}
|
|
57
|
+
static getInstance() {
|
|
58
|
+
return LocalSelectionTransfer.INSTANCE;
|
|
59
|
+
}
|
|
60
|
+
hasData(proto) {
|
|
61
|
+
return proto && proto === this.proto;
|
|
62
|
+
}
|
|
63
|
+
clearData(proto) {
|
|
64
|
+
if (this.hasData(proto)) {
|
|
65
|
+
this.proto = undefined;
|
|
66
|
+
this.data = undefined;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
getData(proto) {
|
|
70
|
+
if (this.hasData(proto)) {
|
|
71
|
+
return this.data;
|
|
72
|
+
}
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
75
|
+
setData(data, proto) {
|
|
76
|
+
if (proto) {
|
|
77
|
+
this.data = data;
|
|
78
|
+
this.proto = proto;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
LocalSelectionTransfer.INSTANCE = new LocalSelectionTransfer();
|
|
83
|
+
function getPanelData() {
|
|
84
|
+
const panelTransfer = LocalSelectionTransfer.getInstance();
|
|
85
|
+
const isPanelEvent = panelTransfer.hasData(PanelTransfer.prototype);
|
|
86
|
+
if (!isPanelEvent) {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
return panelTransfer.getData(PanelTransfer.prototype)[0];
|
|
90
|
+
}
|
|
91
|
+
function getPaneData() {
|
|
92
|
+
const paneTransfer = LocalSelectionTransfer.getInstance();
|
|
93
|
+
const isPanelEvent = paneTransfer.hasData(PaneTransfer.prototype);
|
|
94
|
+
if (!isPanelEvent) {
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
97
|
+
return paneTransfer.getData(PaneTransfer.prototype)[0];
|
|
98
|
+
}
|
|
99
|
+
|
|
30
100
|
exports.Event = void 0;
|
|
31
101
|
(function (Event) {
|
|
32
102
|
Event.any = (...children) => {
|
|
@@ -116,116 +186,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
116
186
|
}
|
|
117
187
|
}
|
|
118
188
|
|
|
119
|
-
exports.Disposable = void 0;
|
|
120
|
-
(function (Disposable) {
|
|
121
|
-
Disposable.NONE = {
|
|
122
|
-
dispose: () => {
|
|
123
|
-
// noop
|
|
124
|
-
},
|
|
125
|
-
};
|
|
126
|
-
})(exports.Disposable || (exports.Disposable = {}));
|
|
127
|
-
class CompositeDisposable {
|
|
128
|
-
constructor(...args) {
|
|
129
|
-
this.disposables = args;
|
|
130
|
-
}
|
|
131
|
-
static from(...args) {
|
|
132
|
-
return new CompositeDisposable(...args);
|
|
133
|
-
}
|
|
134
|
-
addDisposables(...args) {
|
|
135
|
-
args.forEach((arg) => this.disposables.push(arg));
|
|
136
|
-
}
|
|
137
|
-
dispose() {
|
|
138
|
-
this.disposables.forEach((arg) => arg.dispose());
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
class MutableDisposable {
|
|
142
|
-
constructor() {
|
|
143
|
-
this._disposable = exports.Disposable.NONE;
|
|
144
|
-
}
|
|
145
|
-
set value(disposable) {
|
|
146
|
-
if (this._disposable) {
|
|
147
|
-
this._disposable.dispose();
|
|
148
|
-
}
|
|
149
|
-
this._disposable = disposable;
|
|
150
|
-
}
|
|
151
|
-
dispose() {
|
|
152
|
-
if (this._disposable) {
|
|
153
|
-
this._disposable.dispose();
|
|
154
|
-
this._disposable = exports.Disposable.NONE;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
class TransferObject {
|
|
160
|
-
constructor() {
|
|
161
|
-
//
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
class PanelTransfer extends TransferObject {
|
|
165
|
-
constructor(viewId, groupId, panelId) {
|
|
166
|
-
super();
|
|
167
|
-
this.viewId = viewId;
|
|
168
|
-
this.groupId = groupId;
|
|
169
|
-
this.panelId = panelId;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
class PaneTransfer extends TransferObject {
|
|
173
|
-
constructor(viewId, paneId) {
|
|
174
|
-
super();
|
|
175
|
-
this.viewId = viewId;
|
|
176
|
-
this.paneId = paneId;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* A singleton to store transfer data during drag & drop operations that are only valid within the application.
|
|
181
|
-
*/
|
|
182
|
-
class LocalSelectionTransfer {
|
|
183
|
-
constructor() {
|
|
184
|
-
// protect against external instantiation
|
|
185
|
-
}
|
|
186
|
-
static getInstance() {
|
|
187
|
-
return LocalSelectionTransfer.INSTANCE;
|
|
188
|
-
}
|
|
189
|
-
hasData(proto) {
|
|
190
|
-
return proto && proto === this.proto;
|
|
191
|
-
}
|
|
192
|
-
clearData(proto) {
|
|
193
|
-
if (this.hasData(proto)) {
|
|
194
|
-
this.proto = undefined;
|
|
195
|
-
this.data = undefined;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
getData(proto) {
|
|
199
|
-
if (this.hasData(proto)) {
|
|
200
|
-
return this.data;
|
|
201
|
-
}
|
|
202
|
-
return undefined;
|
|
203
|
-
}
|
|
204
|
-
setData(data, proto) {
|
|
205
|
-
if (proto) {
|
|
206
|
-
this.data = data;
|
|
207
|
-
this.proto = proto;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
LocalSelectionTransfer.INSTANCE = new LocalSelectionTransfer();
|
|
212
|
-
function getPanelData() {
|
|
213
|
-
const panelTransfer = LocalSelectionTransfer.getInstance();
|
|
214
|
-
const isPanelEvent = panelTransfer.hasData(PanelTransfer.prototype);
|
|
215
|
-
if (!isPanelEvent) {
|
|
216
|
-
return undefined;
|
|
217
|
-
}
|
|
218
|
-
return panelTransfer.getData(PanelTransfer.prototype)[0];
|
|
219
|
-
}
|
|
220
|
-
function getPaneData() {
|
|
221
|
-
const paneTransfer = LocalSelectionTransfer.getInstance();
|
|
222
|
-
const isPanelEvent = paneTransfer.hasData(PaneTransfer.prototype);
|
|
223
|
-
if (!isPanelEvent) {
|
|
224
|
-
return undefined;
|
|
225
|
-
}
|
|
226
|
-
return paneTransfer.getData(PaneTransfer.prototype)[0];
|
|
227
|
-
}
|
|
228
|
-
|
|
229
189
|
class SplitviewApi {
|
|
230
190
|
constructor(component) {
|
|
231
191
|
this.component = component;
|
|
@@ -248,6 +208,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
248
208
|
get orientation() {
|
|
249
209
|
return this.component.orientation;
|
|
250
210
|
}
|
|
211
|
+
get onDidLayoutFromJSON() {
|
|
212
|
+
return this.component.onDidLayoutFromJSON;
|
|
213
|
+
}
|
|
251
214
|
get onDidLayoutChange() {
|
|
252
215
|
return this.component.onDidLayoutChange;
|
|
253
216
|
}
|
|
@@ -290,8 +253,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
290
253
|
movePanel(from, to) {
|
|
291
254
|
this.component.movePanel(from, to);
|
|
292
255
|
}
|
|
293
|
-
fromJSON(data
|
|
294
|
-
this.component.fromJSON(data
|
|
256
|
+
fromJSON(data) {
|
|
257
|
+
this.component.fromJSON(data);
|
|
295
258
|
}
|
|
296
259
|
toJSON() {
|
|
297
260
|
return this.component.toJSON();
|
|
@@ -316,6 +279,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
316
279
|
get onDidLayoutChange() {
|
|
317
280
|
return this.component.onDidLayoutChange;
|
|
318
281
|
}
|
|
282
|
+
get onDidLayoutFromJSON() {
|
|
283
|
+
return this.component.onDidLayoutFromJSON;
|
|
284
|
+
}
|
|
319
285
|
get onDidAddView() {
|
|
320
286
|
return this.component.onDidAddView;
|
|
321
287
|
}
|
|
@@ -352,13 +318,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
352
318
|
this.component.layout(width, height);
|
|
353
319
|
}
|
|
354
320
|
addPanel(options) {
|
|
355
|
-
|
|
321
|
+
this.component.addPanel(options);
|
|
356
322
|
}
|
|
357
323
|
resizeToFit() {
|
|
358
324
|
this.component.resizeToFit();
|
|
359
325
|
}
|
|
360
|
-
fromJSON(data
|
|
361
|
-
this.component.fromJSON(data
|
|
326
|
+
fromJSON(data) {
|
|
327
|
+
this.component.fromJSON(data);
|
|
362
328
|
}
|
|
363
329
|
toJSON() {
|
|
364
330
|
return this.component.toJSON();
|
|
@@ -386,9 +352,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
386
352
|
get height() {
|
|
387
353
|
return this.component.height;
|
|
388
354
|
}
|
|
389
|
-
get onGridEvent() {
|
|
390
|
-
return this.component.onGridEvent;
|
|
391
|
-
}
|
|
392
355
|
get onDidLayoutChange() {
|
|
393
356
|
return this.component.onDidLayoutChange;
|
|
394
357
|
}
|
|
@@ -443,8 +406,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
443
406
|
setActive(panel) {
|
|
444
407
|
this.component.setActive(panel);
|
|
445
408
|
}
|
|
446
|
-
fromJSON(data
|
|
447
|
-
return this.component.fromJSON(data
|
|
409
|
+
fromJSON(data) {
|
|
410
|
+
return this.component.fromJSON(data);
|
|
448
411
|
}
|
|
449
412
|
toJSON() {
|
|
450
413
|
return this.component.toJSON();
|
|
@@ -478,9 +441,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
478
441
|
get totalPanels() {
|
|
479
442
|
return this.component.totalPanels;
|
|
480
443
|
}
|
|
481
|
-
get onGridEvent() {
|
|
482
|
-
return this.component.onGridEvent;
|
|
483
|
-
}
|
|
484
444
|
get onDidActiveGroupChange() {
|
|
485
445
|
return this.component.onDidActiveGroupChange;
|
|
486
446
|
}
|
|
@@ -499,7 +459,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
499
459
|
get onDidRemovePanel() {
|
|
500
460
|
return this.component.onDidRemovePanel;
|
|
501
461
|
}
|
|
502
|
-
get
|
|
462
|
+
get onDidLayoutFromJSON() {
|
|
503
463
|
return this.component.onDidLayoutfromJSON;
|
|
504
464
|
}
|
|
505
465
|
get onDidLayoutChange() {
|
|
@@ -564,6 +524,46 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
564
524
|
}
|
|
565
525
|
}
|
|
566
526
|
|
|
527
|
+
var Disposable;
|
|
528
|
+
(function (Disposable) {
|
|
529
|
+
Disposable.NONE = {
|
|
530
|
+
dispose: () => {
|
|
531
|
+
// noop
|
|
532
|
+
},
|
|
533
|
+
};
|
|
534
|
+
})(Disposable || (Disposable = {}));
|
|
535
|
+
class CompositeDisposable {
|
|
536
|
+
constructor(...args) {
|
|
537
|
+
this.disposables = args;
|
|
538
|
+
}
|
|
539
|
+
static from(...args) {
|
|
540
|
+
return new CompositeDisposable(...args);
|
|
541
|
+
}
|
|
542
|
+
addDisposables(...args) {
|
|
543
|
+
args.forEach((arg) => this.disposables.push(arg));
|
|
544
|
+
}
|
|
545
|
+
dispose() {
|
|
546
|
+
this.disposables.forEach((arg) => arg.dispose());
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
class MutableDisposable {
|
|
550
|
+
constructor() {
|
|
551
|
+
this._disposable = Disposable.NONE;
|
|
552
|
+
}
|
|
553
|
+
set value(disposable) {
|
|
554
|
+
if (this._disposable) {
|
|
555
|
+
this._disposable.dispose();
|
|
556
|
+
}
|
|
557
|
+
this._disposable = disposable;
|
|
558
|
+
}
|
|
559
|
+
dispose() {
|
|
560
|
+
if (this._disposable) {
|
|
561
|
+
this._disposable.dispose();
|
|
562
|
+
this._disposable = Disposable.NONE;
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
|
|
567
567
|
function watchElementResize(element, cb) {
|
|
568
568
|
const observer = new ResizeObserver((entires) => {
|
|
569
569
|
const firstEntry = entires[0];
|
|
@@ -1509,13 +1509,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1509
1509
|
this._onDidSashEnd.dispose();
|
|
1510
1510
|
this._onDidAddView.dispose();
|
|
1511
1511
|
this._onDidRemoveView.dispose();
|
|
1512
|
-
this.element.remove();
|
|
1513
1512
|
for (let i = 0; i < this.element.children.length; i++) {
|
|
1514
1513
|
if (this.element.children.item(i) === this.element) {
|
|
1515
1514
|
this.element.removeChild(this.element);
|
|
1516
1515
|
break;
|
|
1517
1516
|
}
|
|
1518
1517
|
}
|
|
1518
|
+
this.element.remove();
|
|
1519
1519
|
}
|
|
1520
1520
|
}
|
|
1521
1521
|
|
|
@@ -1538,7 +1538,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1538
1538
|
});
|
|
1539
1539
|
// if we've added views from the descriptor we need to
|
|
1540
1540
|
// add the panes to our Pane array and setup animation
|
|
1541
|
-
this.getPanes().forEach((pane
|
|
1541
|
+
this.getPanes().forEach((pane) => {
|
|
1542
1542
|
const disposable = new CompositeDisposable(pane.onDidChangeExpansionState(() => {
|
|
1543
1543
|
this.setupAnimation();
|
|
1544
1544
|
this._onDidChange.fire(undefined);
|
|
@@ -1606,17 +1606,20 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1606
1606
|
getPanes() {
|
|
1607
1607
|
return this.splitview.getViews();
|
|
1608
1608
|
}
|
|
1609
|
-
removePane(index) {
|
|
1609
|
+
removePane(index, options = { skipDispose: false }) {
|
|
1610
1610
|
const paneItem = this.paneItems.splice(index, 1)[0];
|
|
1611
1611
|
this.splitview.removeView(index);
|
|
1612
|
-
|
|
1612
|
+
if (!options.skipDispose) {
|
|
1613
|
+
paneItem.disposable.dispose();
|
|
1614
|
+
paneItem.pane.dispose();
|
|
1615
|
+
}
|
|
1613
1616
|
return paneItem;
|
|
1614
1617
|
}
|
|
1615
1618
|
moveView(from, to) {
|
|
1616
1619
|
if (from === to) {
|
|
1617
1620
|
return;
|
|
1618
1621
|
}
|
|
1619
|
-
const view = this.removePane(from);
|
|
1622
|
+
const view = this.removePane(from, { skipDispose: true });
|
|
1620
1623
|
this.skipAnimation = true;
|
|
1621
1624
|
try {
|
|
1622
1625
|
this.addPane(view.pane, view.pane.size, to, false);
|
|
@@ -1644,15 +1647,16 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1644
1647
|
}
|
|
1645
1648
|
dispose() {
|
|
1646
1649
|
super.dispose();
|
|
1647
|
-
this.splitview.dispose();
|
|
1648
1650
|
if (this.animationTimer) {
|
|
1649
1651
|
clearTimeout(this.animationTimer);
|
|
1650
1652
|
this.animationTimer = undefined;
|
|
1651
1653
|
}
|
|
1652
1654
|
this.paneItems.forEach((paneItem) => {
|
|
1653
1655
|
paneItem.disposable.dispose();
|
|
1656
|
+
paneItem.pane.dispose();
|
|
1654
1657
|
});
|
|
1655
1658
|
this.paneItems = [];
|
|
1659
|
+
this.splitview.dispose();
|
|
1656
1660
|
this.element.remove();
|
|
1657
1661
|
}
|
|
1658
1662
|
}
|
|
@@ -1716,7 +1720,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1716
1720
|
this._onDrop = new Emitter();
|
|
1717
1721
|
this.onDrop = this._onDrop.event;
|
|
1718
1722
|
this.addDisposables(this._onDrop, new DragAndDropObserver(this.element, {
|
|
1719
|
-
onDragEnter: (
|
|
1723
|
+
onDragEnter: () => undefined,
|
|
1720
1724
|
onDragOver: (e) => {
|
|
1721
1725
|
if (isBooleanValue(this.options.canDisplayOverlay)) {
|
|
1722
1726
|
if (!this.options.canDisplayOverlay) {
|
|
@@ -1757,10 +1761,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1757
1761
|
this.toggleClasses(quadrant, isSmallX, isSmallY);
|
|
1758
1762
|
this.setState(quadrant);
|
|
1759
1763
|
},
|
|
1760
|
-
onDragLeave: (
|
|
1764
|
+
onDragLeave: () => {
|
|
1761
1765
|
this.removeDropTarget();
|
|
1762
1766
|
},
|
|
1763
|
-
onDragEnd: (
|
|
1767
|
+
onDragEnd: () => {
|
|
1764
1768
|
this.removeDropTarget();
|
|
1765
1769
|
},
|
|
1766
1770
|
onDrop: (e) => {
|
|
@@ -1971,7 +1975,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1971
1975
|
this.children = [];
|
|
1972
1976
|
this._onDidChange = new Emitter();
|
|
1973
1977
|
this.onDidChange = this._onDidChange.event;
|
|
1974
|
-
this._childrenDisposable =
|
|
1978
|
+
this._childrenDisposable = Disposable.NONE;
|
|
1975
1979
|
this._orthogonalSize = orthogonalSize;
|
|
1976
1980
|
this._size = size;
|
|
1977
1981
|
this.element = document.createElement('div');
|
|
@@ -1996,7 +2000,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
1996
2000
|
: true,
|
|
1997
2001
|
};
|
|
1998
2002
|
}),
|
|
1999
|
-
size: this.
|
|
2003
|
+
size: this.size,
|
|
2000
2004
|
};
|
|
2001
2005
|
this.children = childDescriptors.map((c) => c.node);
|
|
2002
2006
|
this.splitview = new Splitview(this.element, {
|
|
@@ -2157,7 +2161,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
2157
2161
|
}
|
|
2158
2162
|
setupChildrenEvents() {
|
|
2159
2163
|
this._childrenDisposable.dispose();
|
|
2160
|
-
this._childrenDisposable = exports.Event.any(...this.children.map((c) => c.onDidChange))((
|
|
2164
|
+
this._childrenDisposable = exports.Event.any(...this.children.map((c) => c.onDidChange))(() => {
|
|
2161
2165
|
/**
|
|
2162
2166
|
* indicate a change has occured to allows any re-rendering but don't bubble
|
|
2163
2167
|
* event because that was specific to this branch
|
|
@@ -2317,6 +2321,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
2317
2321
|
this.disposable.dispose();
|
|
2318
2322
|
this._onDidChange.dispose();
|
|
2319
2323
|
this.root.dispose();
|
|
2324
|
+
this.element.remove();
|
|
2320
2325
|
}
|
|
2321
2326
|
clear() {
|
|
2322
2327
|
const orientation = this.root.orientation;
|
|
@@ -2519,7 +2524,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
2519
2524
|
const [parentIndex, ...__] = [...rest].reverse();
|
|
2520
2525
|
const isSiblingVisible = parent.isChildVisible(0);
|
|
2521
2526
|
parent.removeChild(0, sizing);
|
|
2522
|
-
const sizes = grandParent.children.map((
|
|
2527
|
+
const sizes = grandParent.children.map((_size, i) => grandParent.getChildSize(i));
|
|
2523
2528
|
grandParent.removeChild(parentIndex, sizing);
|
|
2524
2529
|
if (sibling instanceof BranchNode) {
|
|
2525
2530
|
sizes.splice(parentIndex, 1, ...sibling.children.map((c) => c.size));
|
|
@@ -2618,7 +2623,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
2618
2623
|
}
|
|
2619
2624
|
this.disposable.value = disposable;
|
|
2620
2625
|
}
|
|
2621
|
-
layout(
|
|
2626
|
+
layout(_width, _height) {
|
|
2622
2627
|
// noop
|
|
2623
2628
|
}
|
|
2624
2629
|
closePanel() {
|
|
@@ -2666,7 +2671,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
2666
2671
|
if (event.dataTransfer) {
|
|
2667
2672
|
event.dataTransfer.effectAllowed = 'move';
|
|
2668
2673
|
}
|
|
2669
|
-
}), addDisposableListener(this.el, 'dragend', (
|
|
2674
|
+
}), addDisposableListener(this.el, 'dragend', () => {
|
|
2670
2675
|
for (const iframe of this.iframes) {
|
|
2671
2676
|
iframe.style.pointerEvents = 'auto';
|
|
2672
2677
|
}
|
|
@@ -3033,6 +3038,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3033
3038
|
get maximumWidth() {
|
|
3034
3039
|
return Number.MAX_SAFE_INTEGER;
|
|
3035
3040
|
}
|
|
3041
|
+
get hasWatermark() {
|
|
3042
|
+
return !!(this.watermark && this.container.contains(this.watermark.element));
|
|
3043
|
+
}
|
|
3036
3044
|
initialize() {
|
|
3037
3045
|
var _a, _b;
|
|
3038
3046
|
if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.panels) {
|
|
@@ -3111,10 +3119,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3111
3119
|
containsPanel(panel) {
|
|
3112
3120
|
return this.panels.includes(panel);
|
|
3113
3121
|
}
|
|
3114
|
-
init(
|
|
3122
|
+
init(_params) {
|
|
3115
3123
|
//noop
|
|
3116
3124
|
}
|
|
3117
|
-
update(
|
|
3125
|
+
update(_params) {
|
|
3118
3126
|
//noop
|
|
3119
3127
|
}
|
|
3120
3128
|
focus() {
|
|
@@ -3337,29 +3345,18 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3337
3345
|
}
|
|
3338
3346
|
}
|
|
3339
3347
|
dispose() {
|
|
3348
|
+
var _a;
|
|
3349
|
+
super.dispose();
|
|
3350
|
+
(_a = this.watermark) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
3340
3351
|
for (const panel of this.panels) {
|
|
3341
3352
|
panel.dispose();
|
|
3342
3353
|
}
|
|
3343
|
-
super.dispose();
|
|
3344
3354
|
this.dropTarget.dispose();
|
|
3345
3355
|
this.tabsContainer.dispose();
|
|
3346
3356
|
this.contentContainer.dispose();
|
|
3347
3357
|
}
|
|
3348
3358
|
}
|
|
3349
3359
|
|
|
3350
|
-
exports.GroupChangeKind = void 0;
|
|
3351
|
-
(function (GroupChangeKind) {
|
|
3352
|
-
GroupChangeKind["ADD_PANEL"] = "ADD_PANEL";
|
|
3353
|
-
GroupChangeKind["REMOVE_PANEL"] = "REMOVE_PANEL";
|
|
3354
|
-
GroupChangeKind["PANEL_ACTIVE"] = "PANEL_ACTIVE";
|
|
3355
|
-
//
|
|
3356
|
-
GroupChangeKind["GROUP_ACTIVE"] = "GROUP_ACTIVE";
|
|
3357
|
-
GroupChangeKind["ADD_GROUP"] = "ADD_GROUP";
|
|
3358
|
-
GroupChangeKind["REMOVE_GROUP"] = "REMOVE_GROUP";
|
|
3359
|
-
//
|
|
3360
|
-
GroupChangeKind["LAYOUT_FROM_JSON"] = "LAYOUT_FROM_JSON";
|
|
3361
|
-
GroupChangeKind["LAYOUT"] = "LAYOUT";
|
|
3362
|
-
})(exports.GroupChangeKind || (exports.GroupChangeKind = {}));
|
|
3363
3360
|
const nextLayoutId = sequentialNumberGenerator();
|
|
3364
3361
|
function toTarget(direction) {
|
|
3365
3362
|
switch (direction) {
|
|
@@ -3382,9 +3379,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3382
3379
|
this._element = _element;
|
|
3383
3380
|
this._id = nextLayoutId.next();
|
|
3384
3381
|
this._groups = new Map();
|
|
3385
|
-
//
|
|
3386
|
-
this._onGridEvent = new Emitter();
|
|
3387
|
-
this.onGridEvent = this._onGridEvent.event;
|
|
3388
3382
|
this._onDidLayoutChange = new Emitter();
|
|
3389
3383
|
this.onDidLayoutChange = this._onDidLayoutChange.event;
|
|
3390
3384
|
this._onDidRemoveGroup = new Emitter();
|
|
@@ -3393,30 +3387,18 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3393
3387
|
this.onDidAddGroup = this._onDidAddGroup.event;
|
|
3394
3388
|
this._onDidActiveGroupChange = new Emitter();
|
|
3395
3389
|
this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
|
|
3390
|
+
this._bufferOnDidLayoutChange = new TickDelayedEvent();
|
|
3396
3391
|
this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation);
|
|
3397
3392
|
this.element.appendChild(this.gridview.element);
|
|
3398
3393
|
this.layout(0, 0, true); // set some elements height/widths
|
|
3399
3394
|
this.addDisposables(this.gridview.onDidChange(() => {
|
|
3400
|
-
this.
|
|
3395
|
+
this._onDidLayoutChange.fire();
|
|
3401
3396
|
}));
|
|
3402
|
-
this.addDisposables((() => {
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
exports.GroupChangeKind.REMOVE_GROUP,
|
|
3408
|
-
exports.GroupChangeKind.ADD_PANEL,
|
|
3409
|
-
exports.GroupChangeKind.REMOVE_PANEL,
|
|
3410
|
-
exports.GroupChangeKind.GROUP_ACTIVE,
|
|
3411
|
-
exports.GroupChangeKind.PANEL_ACTIVE,
|
|
3412
|
-
exports.GroupChangeKind.LAYOUT,
|
|
3413
|
-
].includes(event.kind)) {
|
|
3414
|
-
tickDelayedEvent.fire();
|
|
3415
|
-
}
|
|
3416
|
-
}), tickDelayedEvent.onEvent(() => {
|
|
3417
|
-
this._onDidLayoutChange.fire();
|
|
3418
|
-
}), tickDelayedEvent);
|
|
3419
|
-
})());
|
|
3397
|
+
this.addDisposables(exports.Event.any(this.onDidAddGroup, this.onDidRemoveGroup, this.onDidActiveGroupChange)(() => {
|
|
3398
|
+
this._bufferOnDidLayoutChange.fire();
|
|
3399
|
+
}), this._bufferOnDidLayoutChange.onEvent(() => {
|
|
3400
|
+
this._onDidLayoutChange.fire();
|
|
3401
|
+
}), this._bufferOnDidLayoutChange);
|
|
3420
3402
|
}
|
|
3421
3403
|
get id() {
|
|
3422
3404
|
return this._id;
|
|
@@ -3453,14 +3435,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3453
3435
|
}
|
|
3454
3436
|
setVisible(panel, visible) {
|
|
3455
3437
|
this.gridview.setViewVisible(getGridLocation(panel.element), visible);
|
|
3456
|
-
this.
|
|
3438
|
+
this._onDidLayoutChange.fire();
|
|
3457
3439
|
}
|
|
3458
3440
|
isVisible(panel) {
|
|
3459
3441
|
return this.gridview.isViewVisible(getGridLocation(panel.element));
|
|
3460
3442
|
}
|
|
3461
3443
|
doAddGroup(group, location = [0], size) {
|
|
3462
3444
|
this.gridview.addView(group, size !== null && size !== void 0 ? size : exports.Sizing.Distribute, location);
|
|
3463
|
-
this._onGridEvent.fire({ kind: exports.GroupChangeKind.ADD_GROUP });
|
|
3464
3445
|
this._onDidAddGroup.fire(group);
|
|
3465
3446
|
this.doSetGroupActive(group);
|
|
3466
3447
|
}
|
|
@@ -3472,9 +3453,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3472
3453
|
const view = this.gridview.remove(group, exports.Sizing.Distribute);
|
|
3473
3454
|
if (item && !(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
3474
3455
|
item.disposable.dispose();
|
|
3456
|
+
item.value.dispose();
|
|
3475
3457
|
this._groups.delete(group.id);
|
|
3476
3458
|
}
|
|
3477
|
-
this._onGridEvent.fire({ kind: exports.GroupChangeKind.REMOVE_GROUP });
|
|
3478
3459
|
this._onDidRemoveGroup.fire(group);
|
|
3479
3460
|
if (!(options === null || options === void 0 ? void 0 : options.skipActive) && this._activeGroup === group) {
|
|
3480
3461
|
const groups = Array.from(this._groups.values());
|
|
@@ -3503,9 +3484,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3503
3484
|
}
|
|
3504
3485
|
}
|
|
3505
3486
|
this._activeGroup = group;
|
|
3506
|
-
this._onGridEvent.fire({
|
|
3507
|
-
kind: exports.GroupChangeKind.GROUP_ACTIVE,
|
|
3508
|
-
});
|
|
3509
3487
|
this._onDidActiveGroupChange.fire(group);
|
|
3510
3488
|
}
|
|
3511
3489
|
removeGroup(group) {
|
|
@@ -3562,11 +3540,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3562
3540
|
}
|
|
3563
3541
|
dispose() {
|
|
3564
3542
|
super.dispose();
|
|
3565
|
-
this._onGridEvent.dispose();
|
|
3566
3543
|
this._onDidActiveGroupChange.dispose();
|
|
3567
3544
|
this._onDidAddGroup.dispose();
|
|
3568
3545
|
this._onDidRemoveGroup.dispose();
|
|
3569
3546
|
this._onDidLayoutChange.dispose();
|
|
3547
|
+
for (const group of this.groups) {
|
|
3548
|
+
group.dispose();
|
|
3549
|
+
}
|
|
3570
3550
|
this.gridview.dispose();
|
|
3571
3551
|
}
|
|
3572
3552
|
}
|
|
@@ -3744,6 +3724,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3744
3724
|
this.update({ params: { title } });
|
|
3745
3725
|
}));
|
|
3746
3726
|
}
|
|
3727
|
+
get params() {
|
|
3728
|
+
var _a;
|
|
3729
|
+
return (_a = this._params) === null || _a === void 0 ? void 0 : _a.params;
|
|
3730
|
+
}
|
|
3747
3731
|
get title() {
|
|
3748
3732
|
return this._title;
|
|
3749
3733
|
}
|
|
@@ -3892,7 +3876,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3892
3876
|
get id() {
|
|
3893
3877
|
return 'watermark';
|
|
3894
3878
|
}
|
|
3895
|
-
update(
|
|
3879
|
+
update(_event) {
|
|
3896
3880
|
// noop
|
|
3897
3881
|
}
|
|
3898
3882
|
focus() {
|
|
@@ -3901,17 +3885,17 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
3901
3885
|
toJSON() {
|
|
3902
3886
|
return {};
|
|
3903
3887
|
}
|
|
3904
|
-
layout(
|
|
3888
|
+
layout(_width, _height) {
|
|
3905
3889
|
// noop
|
|
3906
3890
|
}
|
|
3907
3891
|
init(params) {
|
|
3908
3892
|
this.params = params;
|
|
3909
|
-
this.addDisposables(this.params.containerApi.onDidLayoutChange((
|
|
3893
|
+
this.addDisposables(this.params.containerApi.onDidLayoutChange(() => {
|
|
3910
3894
|
this.render();
|
|
3911
3895
|
}));
|
|
3912
3896
|
this.render();
|
|
3913
3897
|
}
|
|
3914
|
-
updateParentGroup(group,
|
|
3898
|
+
updateParentGroup(group, _visible) {
|
|
3915
3899
|
this.group = group;
|
|
3916
3900
|
this.render();
|
|
3917
3901
|
}
|
|
@@ -4086,7 +4070,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4086
4070
|
this._isGroupActive = group.isActive;
|
|
4087
4071
|
this.render();
|
|
4088
4072
|
}
|
|
4089
|
-
layout(
|
|
4073
|
+
layout(_width, _height) {
|
|
4090
4074
|
// noop
|
|
4091
4075
|
}
|
|
4092
4076
|
render() {
|
|
@@ -4160,8 +4144,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4160
4144
|
};
|
|
4161
4145
|
}
|
|
4162
4146
|
dispose() {
|
|
4147
|
+
var _a;
|
|
4163
4148
|
super.dispose();
|
|
4164
4149
|
this.api.dispose();
|
|
4150
|
+
(_a = this.part) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
4165
4151
|
}
|
|
4166
4152
|
}
|
|
4167
4153
|
|
|
@@ -4420,7 +4406,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4420
4406
|
this.onDidLayoutfromJSON = this._onDidLayoutfromJSON.event;
|
|
4421
4407
|
this._onDidActivePanelChange = new Emitter();
|
|
4422
4408
|
this.onDidActivePanelChange = this._onDidActivePanelChange.event;
|
|
4423
|
-
this.addDisposables(this._onTabInteractionEvent, this._onTabContextMenu, this._onDidDrop)
|
|
4409
|
+
this.addDisposables(this._onTabInteractionEvent, this._onTabContextMenu, this._onDidDrop, exports.Event.any(this.onDidAddPanel, this.onDidRemovePanel, this.onDidActivePanelChange)(() => {
|
|
4410
|
+
this._bufferOnDidLayoutChange.fire();
|
|
4411
|
+
}));
|
|
4424
4412
|
this._options = options;
|
|
4425
4413
|
if (!this.options.components) {
|
|
4426
4414
|
this.options.components = {};
|
|
@@ -4554,11 +4542,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4554
4542
|
};
|
|
4555
4543
|
}
|
|
4556
4544
|
fromJSON(data) {
|
|
4545
|
+
const groups = Array.from(this._groups.values()).map((_) => _.value);
|
|
4546
|
+
for (const group of groups) {
|
|
4547
|
+
// remove the group will automatically remove the panels
|
|
4548
|
+
this.removeGroup(group, true);
|
|
4549
|
+
}
|
|
4557
4550
|
this.gridview.clear();
|
|
4558
|
-
this.panels.forEach((panel) => {
|
|
4559
|
-
panel.dispose();
|
|
4560
|
-
});
|
|
4561
|
-
this._groups.clear();
|
|
4562
4551
|
if (!this.deserializer) {
|
|
4563
4552
|
throw new Error('invalid deserializer');
|
|
4564
4553
|
}
|
|
@@ -4582,7 +4571,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4582
4571
|
}
|
|
4583
4572
|
}
|
|
4584
4573
|
this.gridview.layout(this.width, this.height);
|
|
4585
|
-
this._onGridEvent.fire({ kind: exports.GroupChangeKind.LAYOUT_FROM_JSON });
|
|
4586
4574
|
this._onDidLayoutfromJSON.fire();
|
|
4587
4575
|
}
|
|
4588
4576
|
closeAllGroups() {
|
|
@@ -4604,7 +4592,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4604
4592
|
}
|
|
4605
4593
|
addPanel(options) {
|
|
4606
4594
|
var _a, _b;
|
|
4607
|
-
|
|
4595
|
+
if (this.panels.find((_) => _.id === options.id)) {
|
|
4596
|
+
throw new Error(`panel with id ${options.id} already exists`);
|
|
4597
|
+
}
|
|
4598
|
+
const panel = this.createPanel(options);
|
|
4608
4599
|
let referenceGroup;
|
|
4609
4600
|
if ((_a = options.position) === null || _a === void 0 ? void 0 : _a.referencePanel) {
|
|
4610
4601
|
const referencePanel = this.getGroupPanel(options.position.referencePanel);
|
|
@@ -4632,13 +4623,20 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4632
4623
|
}
|
|
4633
4624
|
return panel;
|
|
4634
4625
|
}
|
|
4635
|
-
removePanel(panel
|
|
4626
|
+
removePanel(panel, options = {
|
|
4627
|
+
removeEmptyGroup: true,
|
|
4628
|
+
skipDispose: false,
|
|
4629
|
+
}) {
|
|
4636
4630
|
const group = panel.group;
|
|
4637
4631
|
if (!group) {
|
|
4638
4632
|
throw new Error(`cannot remove panel ${panel.id}. it's missing a group.`);
|
|
4639
4633
|
}
|
|
4640
4634
|
group.model.removePanel(panel);
|
|
4641
|
-
|
|
4635
|
+
panel.dispose();
|
|
4636
|
+
const retainGroupForWatermark = this.size === 1;
|
|
4637
|
+
if (!retainGroupForWatermark &&
|
|
4638
|
+
group.model.size === 0 &&
|
|
4639
|
+
options.removeEmptyGroup) {
|
|
4642
4640
|
this.removeGroup(group);
|
|
4643
4641
|
}
|
|
4644
4642
|
}
|
|
@@ -4670,16 +4668,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4670
4668
|
this.doAddGroup(group);
|
|
4671
4669
|
}
|
|
4672
4670
|
}
|
|
4673
|
-
removeGroup(group) {
|
|
4671
|
+
removeGroup(group, skipActive = false) {
|
|
4674
4672
|
const panels = [...group.model.panels]; // reassign since group panels will mutate
|
|
4675
|
-
|
|
4676
|
-
this.removePanel(panel
|
|
4677
|
-
|
|
4678
|
-
|
|
4679
|
-
|
|
4680
|
-
return;
|
|
4673
|
+
for (const panel of panels) {
|
|
4674
|
+
this.removePanel(panel, {
|
|
4675
|
+
removeEmptyGroup: false,
|
|
4676
|
+
skipDispose: false,
|
|
4677
|
+
});
|
|
4681
4678
|
}
|
|
4682
|
-
super.
|
|
4679
|
+
super.doRemoveGroup(group, { skipActive });
|
|
4683
4680
|
}
|
|
4684
4681
|
moveGroupOrPanel(referenceGroup, groupId, itemId, target, index) {
|
|
4685
4682
|
var _a;
|
|
@@ -4734,15 +4731,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4734
4731
|
}
|
|
4735
4732
|
}
|
|
4736
4733
|
doSetGroupActive(group, skipFocus) {
|
|
4737
|
-
var _a, _b
|
|
4734
|
+
var _a, _b;
|
|
4738
4735
|
const isGroupAlreadyFocused = this._activeGroup === group;
|
|
4739
4736
|
super.doSetGroupActive(group, skipFocus);
|
|
4740
4737
|
if (!isGroupAlreadyFocused && ((_a = this._activeGroup) === null || _a === void 0 ? void 0 : _a.model.activePanel)) {
|
|
4741
|
-
this.
|
|
4742
|
-
kind: exports.GroupChangeKind.PANEL_ACTIVE,
|
|
4743
|
-
panel: (_b = this._activeGroup) === null || _b === void 0 ? void 0 : _b.model.activePanel,
|
|
4744
|
-
});
|
|
4745
|
-
this._onDidActivePanelChange.fire((_c = this._activeGroup) === null || _c === void 0 ? void 0 : _c.model.activePanel);
|
|
4738
|
+
this._onDidActivePanelChange.fire((_b = this._activeGroup) === null || _b === void 0 ? void 0 : _b.model.activePanel);
|
|
4746
4739
|
}
|
|
4747
4740
|
}
|
|
4748
4741
|
createGroup(options) {
|
|
@@ -4764,6 +4757,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4764
4757
|
}
|
|
4765
4758
|
}
|
|
4766
4759
|
const view = new GroupviewPanel(this, id, options);
|
|
4760
|
+
view.init({ params: {}, containerApi: null }); // required to initialized .part and allow for correct disposal of group
|
|
4767
4761
|
if (!this._groups.has(view.id)) {
|
|
4768
4762
|
const disposable = new CompositeDisposable(view.model.onMove((event) => {
|
|
4769
4763
|
const { groupId, itemId, target, index } = event;
|
|
@@ -4773,28 +4767,16 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4773
4767
|
}), view.model.onDidGroupChange((event) => {
|
|
4774
4768
|
switch (event.kind) {
|
|
4775
4769
|
case exports.GroupChangeKind2.ADD_PANEL:
|
|
4776
|
-
this._onGridEvent.fire({
|
|
4777
|
-
kind: exports.GroupChangeKind.ADD_PANEL,
|
|
4778
|
-
panel: event.panel,
|
|
4779
|
-
});
|
|
4780
4770
|
if (event.panel) {
|
|
4781
4771
|
this._onDidAddPanel.fire(event.panel);
|
|
4782
4772
|
}
|
|
4783
4773
|
break;
|
|
4784
4774
|
case exports.GroupChangeKind2.REMOVE_PANEL:
|
|
4785
|
-
this._onGridEvent.fire({
|
|
4786
|
-
kind: exports.GroupChangeKind.REMOVE_PANEL,
|
|
4787
|
-
panel: event.panel,
|
|
4788
|
-
});
|
|
4789
4775
|
if (event.panel) {
|
|
4790
4776
|
this._onDidRemovePanel.fire(event.panel);
|
|
4791
4777
|
}
|
|
4792
4778
|
break;
|
|
4793
4779
|
case exports.GroupChangeKind2.PANEL_ACTIVE:
|
|
4794
|
-
this._onGridEvent.fire({
|
|
4795
|
-
kind: exports.GroupChangeKind.PANEL_ACTIVE,
|
|
4796
|
-
panel: event.panel,
|
|
4797
|
-
});
|
|
4798
4780
|
this._onDidActivePanelChange.fire(event.panel);
|
|
4799
4781
|
break;
|
|
4800
4782
|
}
|
|
@@ -4809,7 +4791,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4809
4791
|
}
|
|
4810
4792
|
return view;
|
|
4811
4793
|
}
|
|
4812
|
-
|
|
4794
|
+
createPanel(options) {
|
|
4813
4795
|
const view = new DefaultGroupPanelView({
|
|
4814
4796
|
content: this.createContentComponent(options.id, options.component),
|
|
4815
4797
|
tab: this.createTabComponent(options.id, options.tabComponent),
|
|
@@ -4910,7 +4892,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4910
4892
|
this.gridview.setViewVisible(getGridLocation(panel.element), visible);
|
|
4911
4893
|
}
|
|
4912
4894
|
setActive(panel) {
|
|
4913
|
-
this._groups.forEach((value,
|
|
4895
|
+
this._groups.forEach((value, _key) => {
|
|
4914
4896
|
value.value.setActive(panel === value.value);
|
|
4915
4897
|
});
|
|
4916
4898
|
}
|
|
@@ -4921,10 +4903,14 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4921
4903
|
var _a;
|
|
4922
4904
|
(_a = this.activeGroup) === null || _a === void 0 ? void 0 : _a.focus();
|
|
4923
4905
|
}
|
|
4924
|
-
fromJSON(serializedGridview
|
|
4906
|
+
fromJSON(serializedGridview) {
|
|
4925
4907
|
const { grid, activePanel } = serializedGridview;
|
|
4908
|
+
const groups = Array.from(this._groups.values()); // reassign since group panels will mutate
|
|
4909
|
+
for (const group of groups) {
|
|
4910
|
+
group.disposable.dispose();
|
|
4911
|
+
this.doRemoveGroup(group.value, { skipActive: true });
|
|
4912
|
+
}
|
|
4926
4913
|
this.gridview.clear();
|
|
4927
|
-
this._groups.clear();
|
|
4928
4914
|
const queue = [];
|
|
4929
4915
|
this.gridview.deserialize(grid, {
|
|
4930
4916
|
fromJSON: (node) => {
|
|
@@ -4951,21 +4937,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4951
4937
|
},
|
|
4952
4938
|
});
|
|
4953
4939
|
this.layout(this.width, this.height, true);
|
|
4954
|
-
|
|
4955
|
-
setTimeout(() => {
|
|
4956
|
-
queue.forEach((f) => f());
|
|
4957
|
-
}, 0);
|
|
4958
|
-
}
|
|
4959
|
-
else {
|
|
4960
|
-
queue.forEach((f) => f());
|
|
4961
|
-
}
|
|
4940
|
+
queue.forEach((f) => f());
|
|
4962
4941
|
if (typeof activePanel === 'string') {
|
|
4963
4942
|
const panel = this.getPanel(activePanel);
|
|
4964
4943
|
if (panel) {
|
|
4965
4944
|
this.doSetGroupActive(panel);
|
|
4966
4945
|
}
|
|
4967
4946
|
}
|
|
4968
|
-
this._onGridEvent.fire({ kind: exports.GroupChangeKind.LAYOUT_FROM_JSON });
|
|
4969
4947
|
this._onDidLayoutfromJSON.fire();
|
|
4970
4948
|
}
|
|
4971
4949
|
movePanel(panel, options) {
|
|
@@ -5022,7 +5000,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5022
5000
|
});
|
|
5023
5001
|
this.registerPanel(view);
|
|
5024
5002
|
this.doAddGroup(view, relativeLocation, options.size);
|
|
5025
|
-
return { api: view.api };
|
|
5026
5003
|
}
|
|
5027
5004
|
registerPanel(panel) {
|
|
5028
5005
|
const disposable = new CompositeDisposable(panel.api.onDidFocusChange((event) => {
|
|
@@ -5073,11 +5050,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5073
5050
|
}
|
|
5074
5051
|
removeGroup(group) {
|
|
5075
5052
|
super.removeGroup(group);
|
|
5076
|
-
const panel = this._groups.get(group.id);
|
|
5077
|
-
if (panel) {
|
|
5078
|
-
panel.disposable.dispose();
|
|
5079
|
-
this._groups.delete(group.id);
|
|
5080
|
-
}
|
|
5081
5053
|
}
|
|
5082
5054
|
dispose() {
|
|
5083
5055
|
super.dispose();
|
|
@@ -5094,6 +5066,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5094
5066
|
this.element = element;
|
|
5095
5067
|
this._disposable = new MutableDisposable();
|
|
5096
5068
|
this.panels = new Map();
|
|
5069
|
+
this._onDidLayoutfromJSON = new Emitter();
|
|
5070
|
+
this.onDidLayoutFromJSON = this._onDidLayoutfromJSON.event;
|
|
5097
5071
|
this._onDidAddView = new Emitter();
|
|
5098
5072
|
this.onDidAddView = this._onDidAddView.event;
|
|
5099
5073
|
this._onDidRemoveView = new Emitter();
|
|
@@ -5108,7 +5082,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5108
5082
|
options.frameworkComponents = {};
|
|
5109
5083
|
}
|
|
5110
5084
|
this.splitview = new Splitview(this.element, options);
|
|
5111
|
-
this.addDisposables(this._disposable, this._onDidAddView, this._onDidRemoveView, this._onDidLayoutChange);
|
|
5085
|
+
this.addDisposables(this._disposable, this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
|
|
5112
5086
|
}
|
|
5113
5087
|
get options() {
|
|
5114
5088
|
return this._options;
|
|
@@ -5184,7 +5158,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5184
5158
|
}
|
|
5185
5159
|
removePanel(panel, sizing) {
|
|
5186
5160
|
const disposable = this.panels.get(panel.id);
|
|
5187
|
-
|
|
5161
|
+
if (!disposable) {
|
|
5162
|
+
throw new Error(`unknown splitview panel ${panel.id}`);
|
|
5163
|
+
}
|
|
5164
|
+
disposable.disposable.dispose();
|
|
5165
|
+
disposable.value.dispose();
|
|
5188
5166
|
this.panels.delete(panel.id);
|
|
5189
5167
|
const index = this.getPanels().findIndex((_) => _ === panel);
|
|
5190
5168
|
this.splitview.removeView(index, sizing);
|
|
@@ -5243,7 +5221,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5243
5221
|
}
|
|
5244
5222
|
this.setActive(view, true);
|
|
5245
5223
|
});
|
|
5246
|
-
this.panels.set(view.id, disposable);
|
|
5224
|
+
this.panels.set(view.id, { disposable, value: view });
|
|
5247
5225
|
}
|
|
5248
5226
|
toJSON() {
|
|
5249
5227
|
var _a;
|
|
@@ -5265,8 +5243,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5265
5243
|
orientation: this.splitview.orientation,
|
|
5266
5244
|
};
|
|
5267
5245
|
}
|
|
5268
|
-
fromJSON(serializedSplitview
|
|
5246
|
+
fromJSON(serializedSplitview) {
|
|
5269
5247
|
const { views, orientation, size, activeView } = serializedSplitview;
|
|
5248
|
+
for (const [_, value] of this.panels.entries()) {
|
|
5249
|
+
value.disposable.dispose();
|
|
5250
|
+
value.value.dispose();
|
|
5251
|
+
}
|
|
5252
|
+
this.panels.clear();
|
|
5270
5253
|
this.splitview.dispose();
|
|
5271
5254
|
const queue = [];
|
|
5272
5255
|
this.splitview = new Splitview(this.element, {
|
|
@@ -5306,26 +5289,22 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5306
5289
|
},
|
|
5307
5290
|
});
|
|
5308
5291
|
this.layout(this.width, this.height);
|
|
5309
|
-
|
|
5310
|
-
setTimeout(() => {
|
|
5311
|
-
queue.forEach((f) => f());
|
|
5312
|
-
}, 0);
|
|
5313
|
-
}
|
|
5314
|
-
else {
|
|
5315
|
-
queue.forEach((f) => f());
|
|
5316
|
-
}
|
|
5292
|
+
queue.forEach((f) => f());
|
|
5317
5293
|
if (typeof activeView === 'string') {
|
|
5318
5294
|
const panel = this.getPanel(activeView);
|
|
5319
5295
|
if (panel) {
|
|
5320
5296
|
this.setActive(panel);
|
|
5321
5297
|
}
|
|
5322
5298
|
}
|
|
5299
|
+
this._onDidLayoutfromJSON.fire();
|
|
5323
5300
|
}
|
|
5324
5301
|
dispose() {
|
|
5325
|
-
|
|
5326
|
-
value.dispose();
|
|
5327
|
-
|
|
5302
|
+
for (const [_, value] of this.panels.entries()) {
|
|
5303
|
+
value.disposable.dispose();
|
|
5304
|
+
value.value.dispose();
|
|
5305
|
+
}
|
|
5328
5306
|
this.panels.clear();
|
|
5307
|
+
this.splitview.dispose();
|
|
5329
5308
|
super.dispose();
|
|
5330
5309
|
}
|
|
5331
5310
|
}
|
|
@@ -5594,7 +5573,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5594
5573
|
})(this.header);
|
|
5595
5574
|
this.target = new Droptarget(this.element, {
|
|
5596
5575
|
validOverlays: 'vertical',
|
|
5597
|
-
canDisplayOverlay: (
|
|
5576
|
+
canDisplayOverlay: () => {
|
|
5598
5577
|
const data = getPaneData();
|
|
5599
5578
|
if (!data) {
|
|
5600
5579
|
return true;
|
|
@@ -5665,7 +5644,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5665
5644
|
this._expander.textContent = e.isExpanded ? '<' : '>';
|
|
5666
5645
|
});
|
|
5667
5646
|
}
|
|
5668
|
-
update(
|
|
5647
|
+
update(_params) {
|
|
5669
5648
|
//
|
|
5670
5649
|
}
|
|
5671
5650
|
dispose() {
|
|
@@ -5691,6 +5670,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5691
5670
|
super();
|
|
5692
5671
|
this.element = element;
|
|
5693
5672
|
this._disposable = new MutableDisposable();
|
|
5673
|
+
this._viewDisposables = new Map();
|
|
5674
|
+
this._onDidLayoutfromJSON = new Emitter();
|
|
5675
|
+
this.onDidLayoutFromJSON = this._onDidLayoutfromJSON.event;
|
|
5694
5676
|
this._onDidLayoutChange = new Emitter();
|
|
5695
5677
|
this.onDidLayoutChange = this._onDidLayoutChange.event;
|
|
5696
5678
|
this._onDidDrop = new Emitter();
|
|
@@ -5699,7 +5681,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5699
5681
|
this.onDidAddView = this._onDidAddView.event;
|
|
5700
5682
|
this._onDidRemoveView = new Emitter();
|
|
5701
5683
|
this.onDidRemoveView = this._onDidRemoveView.event;
|
|
5702
|
-
this.addDisposables(this._onDidLayoutChange, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
|
|
5684
|
+
this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
|
|
5703
5685
|
this._options = options;
|
|
5704
5686
|
if (!options.components) {
|
|
5705
5687
|
options.components = {};
|
|
@@ -5775,9 +5757,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5775
5757
|
isExpanded: !!options.isExpanded,
|
|
5776
5758
|
disableDnd: !!this.options.disableDnd,
|
|
5777
5759
|
});
|
|
5778
|
-
|
|
5779
|
-
this._onDidDrop.fire(event);
|
|
5780
|
-
}));
|
|
5760
|
+
this.doAddPanel(view);
|
|
5781
5761
|
const size = typeof options.size === 'number' ? options.size : exports.Sizing.Distribute;
|
|
5782
5762
|
const index = typeof options.index === 'number' ? options.index : undefined;
|
|
5783
5763
|
view.init({
|
|
@@ -5790,7 +5770,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5790
5770
|
});
|
|
5791
5771
|
this.paneview.addPane(view, size, index);
|
|
5792
5772
|
view.orientation = this.paneview.orientation;
|
|
5793
|
-
return
|
|
5773
|
+
return view;
|
|
5794
5774
|
}
|
|
5795
5775
|
getPanels() {
|
|
5796
5776
|
return this.paneview.getPanes();
|
|
@@ -5799,6 +5779,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5799
5779
|
const views = this.getPanels();
|
|
5800
5780
|
const index = views.findIndex((_) => _ === panel);
|
|
5801
5781
|
this.paneview.removePane(index);
|
|
5782
|
+
this.doRemovePanel(panel);
|
|
5802
5783
|
}
|
|
5803
5784
|
movePanel(from, to) {
|
|
5804
5785
|
this.paneview.moveView(from, to);
|
|
@@ -5845,9 +5826,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5845
5826
|
size: this.paneview.size,
|
|
5846
5827
|
};
|
|
5847
5828
|
}
|
|
5848
|
-
fromJSON(serializedPaneview
|
|
5829
|
+
fromJSON(serializedPaneview) {
|
|
5849
5830
|
const { views, size } = serializedPaneview;
|
|
5850
5831
|
const queue = [];
|
|
5832
|
+
for (const [_, value] of this._viewDisposables.entries()) {
|
|
5833
|
+
value.dispose();
|
|
5834
|
+
}
|
|
5835
|
+
this._viewDisposables.clear();
|
|
5851
5836
|
this.paneview.dispose();
|
|
5852
5837
|
this.paneview = new Paneview(this.element, {
|
|
5853
5838
|
orientation: exports.Orientation.VERTICAL,
|
|
@@ -5883,9 +5868,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5883
5868
|
isExpanded: !!view.expanded,
|
|
5884
5869
|
disableDnd: !!this.options.disableDnd,
|
|
5885
5870
|
});
|
|
5886
|
-
|
|
5887
|
-
this._onDidDrop.fire(event);
|
|
5888
|
-
});
|
|
5871
|
+
this.doAddPanel(panel);
|
|
5889
5872
|
queue.push(() => {
|
|
5890
5873
|
panel.init({
|
|
5891
5874
|
params: data.params || {},
|
|
@@ -5906,14 +5889,29 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5906
5889
|
},
|
|
5907
5890
|
});
|
|
5908
5891
|
this.layout(this.width, this.height);
|
|
5909
|
-
|
|
5910
|
-
|
|
5911
|
-
|
|
5912
|
-
|
|
5892
|
+
queue.forEach((f) => f());
|
|
5893
|
+
this._onDidLayoutfromJSON.fire();
|
|
5894
|
+
}
|
|
5895
|
+
doAddPanel(panel) {
|
|
5896
|
+
const disposable = panel.onDidDrop((event) => {
|
|
5897
|
+
this._onDidDrop.fire(event);
|
|
5898
|
+
});
|
|
5899
|
+
this._viewDisposables.set(panel.id, disposable);
|
|
5900
|
+
}
|
|
5901
|
+
doRemovePanel(panel) {
|
|
5902
|
+
const disposable = this._viewDisposables.get(panel.id);
|
|
5903
|
+
if (disposable) {
|
|
5904
|
+
disposable.dispose();
|
|
5905
|
+
this._viewDisposables.delete(panel.id);
|
|
5913
5906
|
}
|
|
5914
|
-
|
|
5915
|
-
|
|
5907
|
+
}
|
|
5908
|
+
dispose() {
|
|
5909
|
+
super.dispose();
|
|
5910
|
+
for (const [_, value] of this._viewDisposables.entries()) {
|
|
5911
|
+
value.dispose();
|
|
5916
5912
|
}
|
|
5913
|
+
this._viewDisposables.clear();
|
|
5914
|
+
this.paneview.dispose();
|
|
5917
5915
|
}
|
|
5918
5916
|
}
|
|
5919
5917
|
|
|
@@ -6141,18 +6139,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6141
6139
|
this.id = id;
|
|
6142
6140
|
this.component = component;
|
|
6143
6141
|
this.reactPortalStore = reactPortalStore;
|
|
6144
|
-
// private hostedContainer: HostedContainer;
|
|
6145
6142
|
this._onDidFocus = new Emitter();
|
|
6146
6143
|
this.onDidFocus = this._onDidFocus.event;
|
|
6147
6144
|
this._onDidBlur = new Emitter();
|
|
6148
6145
|
this.onDidBlur = this._onDidBlur.event;
|
|
6149
6146
|
this._element = document.createElement('div');
|
|
6150
6147
|
this._element.className = 'dockview-react-part';
|
|
6151
|
-
// this.hostedContainer = new HostedContainer({
|
|
6152
|
-
// id,
|
|
6153
|
-
// });
|
|
6154
|
-
// this.hostedContainer.onDidFocus(() => this._onDidFocus.fire());
|
|
6155
|
-
// this.hostedContainer.onDidBlur(() => this._onDidBlur.fire());
|
|
6156
6148
|
this._actionsElement = document.createElement('div');
|
|
6157
6149
|
this._actionsElement.className = 'dockview-react-part';
|
|
6158
6150
|
}
|
|
@@ -6187,15 +6179,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6187
6179
|
var _a;
|
|
6188
6180
|
(_a = this.part) === null || _a === void 0 ? void 0 : _a.update(event.params);
|
|
6189
6181
|
}
|
|
6190
|
-
updateParentGroup(group,
|
|
6182
|
+
updateParentGroup(group, _isPanelVisible) {
|
|
6191
6183
|
this._group = group;
|
|
6192
6184
|
}
|
|
6193
|
-
layout(
|
|
6185
|
+
layout(_width, _height) {
|
|
6194
6186
|
// noop
|
|
6195
|
-
// this.hostedContainer.layout(
|
|
6196
|
-
// this.element
|
|
6197
|
-
// // { width, height }
|
|
6198
|
-
// );
|
|
6199
6187
|
}
|
|
6200
6188
|
close() {
|
|
6201
6189
|
return Promise.resolve(true);
|
|
@@ -6205,7 +6193,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6205
6193
|
this._onDidFocus.dispose();
|
|
6206
6194
|
this._onDidBlur.dispose();
|
|
6207
6195
|
(_a = this.part) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
6208
|
-
// this.hostedContainer?.dispose();
|
|
6209
6196
|
(_b = this.actionsPart) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
6210
6197
|
}
|
|
6211
6198
|
}
|
|
@@ -6240,10 +6227,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6240
6227
|
id: this.id,
|
|
6241
6228
|
};
|
|
6242
6229
|
}
|
|
6243
|
-
layout(
|
|
6230
|
+
layout(_width, _height) {
|
|
6244
6231
|
// noop - retrieval from api
|
|
6245
6232
|
}
|
|
6246
|
-
updateParentGroup(
|
|
6233
|
+
updateParentGroup(_group, _isPanelVisible) {
|
|
6247
6234
|
// noop - retrieval from api
|
|
6248
6235
|
}
|
|
6249
6236
|
dispose() {
|
|
@@ -6322,10 +6309,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6322
6309
|
id: this.id,
|
|
6323
6310
|
};
|
|
6324
6311
|
}
|
|
6325
|
-
layout(
|
|
6312
|
+
layout(_width, _height) {
|
|
6326
6313
|
// noop - retrieval from api
|
|
6327
6314
|
}
|
|
6328
|
-
updateParentGroup(group,
|
|
6315
|
+
updateParentGroup(group, _isPanelVisible) {
|
|
6329
6316
|
// noop - retrieval from api
|
|
6330
6317
|
this._groupRef.value = group;
|
|
6331
6318
|
}
|
|
@@ -6359,21 +6346,21 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6359
6346
|
var _a;
|
|
6360
6347
|
const factory = {
|
|
6361
6348
|
content: {
|
|
6362
|
-
createComponent: (
|
|
6349
|
+
createComponent: (_id, componentId, component) => {
|
|
6363
6350
|
return new ReactPanelContentPart(componentId, component, {
|
|
6364
6351
|
addPortal,
|
|
6365
6352
|
});
|
|
6366
6353
|
},
|
|
6367
6354
|
},
|
|
6368
6355
|
tab: {
|
|
6369
|
-
createComponent: (
|
|
6356
|
+
createComponent: (_id, componentId, component) => {
|
|
6370
6357
|
return new ReactPanelHeaderPart(componentId, component, {
|
|
6371
6358
|
addPortal,
|
|
6372
6359
|
});
|
|
6373
6360
|
},
|
|
6374
6361
|
},
|
|
6375
6362
|
watermark: {
|
|
6376
|
-
createComponent: (
|
|
6363
|
+
createComponent: (_id, componentId, component) => {
|
|
6377
6364
|
return new ReactWatermarkPart(componentId, component, {
|
|
6378
6365
|
addPortal,
|
|
6379
6366
|
});
|
|
@@ -6392,11 +6379,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6392
6379
|
? { separatorBorder: 'transparent' }
|
|
6393
6380
|
: undefined,
|
|
6394
6381
|
});
|
|
6395
|
-
const disposable = dockview.onDidDrop((event) => {
|
|
6396
|
-
if (props.onDidDrop) {
|
|
6397
|
-
props.onDidDrop(event);
|
|
6398
|
-
}
|
|
6399
|
-
});
|
|
6400
6382
|
(_a = domRef.current) === null || _a === void 0 ? void 0 : _a.appendChild(dockview.element);
|
|
6401
6383
|
dockview.deserializer = new ReactPanelDeserialzier(dockview);
|
|
6402
6384
|
const { clientWidth, clientHeight } = domRef.current;
|
|
@@ -6406,10 +6388,25 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6406
6388
|
}
|
|
6407
6389
|
dockviewRef.current = dockview;
|
|
6408
6390
|
return () => {
|
|
6409
|
-
disposable.dispose();
|
|
6410
6391
|
dockview.dispose();
|
|
6392
|
+
element.remove();
|
|
6411
6393
|
};
|
|
6412
6394
|
}, []);
|
|
6395
|
+
React__namespace.useEffect(() => {
|
|
6396
|
+
if (!dockviewRef.current) {
|
|
6397
|
+
return () => {
|
|
6398
|
+
// noop
|
|
6399
|
+
};
|
|
6400
|
+
}
|
|
6401
|
+
const disposable = dockviewRef.current.onDidDrop((event) => {
|
|
6402
|
+
if (props.onDidDrop) {
|
|
6403
|
+
props.onDidDrop(event);
|
|
6404
|
+
}
|
|
6405
|
+
});
|
|
6406
|
+
return () => {
|
|
6407
|
+
disposable.dispose();
|
|
6408
|
+
};
|
|
6409
|
+
}, [props.onDidDrop]);
|
|
6413
6410
|
React__namespace.useEffect(() => {
|
|
6414
6411
|
if (!dockviewRef.current) {
|
|
6415
6412
|
return;
|
|
@@ -6418,6 +6415,14 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6418
6415
|
frameworkComponents: props.components,
|
|
6419
6416
|
});
|
|
6420
6417
|
}, [props.components]);
|
|
6418
|
+
React__namespace.useEffect(() => {
|
|
6419
|
+
if (!dockviewRef.current) {
|
|
6420
|
+
return;
|
|
6421
|
+
}
|
|
6422
|
+
dockviewRef.current.updateOptions({
|
|
6423
|
+
watermarkFrameworkComponent: props.watermarkComponent,
|
|
6424
|
+
});
|
|
6425
|
+
}, [props.watermarkComponent]);
|
|
6421
6426
|
React__namespace.useEffect(() => {
|
|
6422
6427
|
if (!dockviewRef.current) {
|
|
6423
6428
|
return;
|
|
@@ -6553,7 +6558,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6553
6558
|
});
|
|
6554
6559
|
},
|
|
6555
6560
|
},
|
|
6556
|
-
proportionalLayout: props.proportionalLayout
|
|
6561
|
+
proportionalLayout: typeof props.proportionalLayout === 'boolean'
|
|
6562
|
+
? props.proportionalLayout
|
|
6563
|
+
: true,
|
|
6557
6564
|
styles: props.hideBorders
|
|
6558
6565
|
? { separatorBorder: 'transparent' }
|
|
6559
6566
|
: undefined,
|
|
@@ -6621,7 +6628,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6621
6628
|
var _a;
|
|
6622
6629
|
const element = document.createElement('div');
|
|
6623
6630
|
const gridview = new GridviewComponent(element, {
|
|
6624
|
-
proportionalLayout:
|
|
6631
|
+
proportionalLayout: typeof props.proportionalLayout === 'boolean'
|
|
6632
|
+
? props.proportionalLayout
|
|
6633
|
+
: true,
|
|
6625
6634
|
orientation: props.orientation,
|
|
6626
6635
|
frameworkComponents: props.components,
|
|
6627
6636
|
frameworkComponentFactory: {
|
|
@@ -6644,6 +6653,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6644
6653
|
gridviewRef.current = gridview;
|
|
6645
6654
|
return () => {
|
|
6646
6655
|
gridview.dispose();
|
|
6656
|
+
element.remove();
|
|
6647
6657
|
};
|
|
6648
6658
|
}, []);
|
|
6649
6659
|
React__namespace.useEffect(() => {
|
|
@@ -6714,7 +6724,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6714
6724
|
};
|
|
6715
6725
|
}, [props.disableAutoResizing]);
|
|
6716
6726
|
React__namespace.useEffect(() => {
|
|
6717
|
-
const createComponent = (id,
|
|
6727
|
+
const createComponent = (id, _componentId, component) => new PanePanelSection(id, component, {
|
|
6718
6728
|
addPortal,
|
|
6719
6729
|
});
|
|
6720
6730
|
const paneview = new PaneviewComponent(domRef.current, {
|
|
@@ -6780,13 +6790,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6780
6790
|
PaneviewReact.displayName = 'PaneviewComponent';
|
|
6781
6791
|
|
|
6782
6792
|
exports.BaseGrid = BaseGrid;
|
|
6783
|
-
exports.CompositeDisposable = CompositeDisposable;
|
|
6784
6793
|
exports.ContentContainer = ContentContainer;
|
|
6785
6794
|
exports.DockviewApi = DockviewApi;
|
|
6786
6795
|
exports.DockviewComponent = DockviewComponent;
|
|
6787
6796
|
exports.DockviewComponents = DockviewComponents;
|
|
6788
6797
|
exports.DockviewReact = DockviewReact;
|
|
6789
|
-
exports.Emitter = Emitter;
|
|
6790
6798
|
exports.Gridview = Gridview;
|
|
6791
6799
|
exports.GridviewApi = GridviewApi;
|
|
6792
6800
|
exports.GridviewComponent = GridviewComponent;
|
|
@@ -6794,7 +6802,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6794
6802
|
exports.GridviewReact = GridviewReact;
|
|
6795
6803
|
exports.Groupview = Groupview;
|
|
6796
6804
|
exports.LocalSelectionTransfer = LocalSelectionTransfer;
|
|
6797
|
-
exports.MutableDisposable = MutableDisposable;
|
|
6798
6805
|
exports.PaneFramework = PaneFramework;
|
|
6799
6806
|
exports.PaneTransfer = PaneTransfer;
|
|
6800
6807
|
exports.PanelTransfer = PanelTransfer;
|
|
@@ -6813,9 +6820,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6813
6820
|
exports.SplitviewPanel = SplitviewPanel;
|
|
6814
6821
|
exports.SplitviewReact = SplitviewReact;
|
|
6815
6822
|
exports.Tab = Tab$1;
|
|
6816
|
-
exports.TickDelayedEvent = TickDelayedEvent;
|
|
6817
|
-
exports.addDisposableListener = addDisposableListener;
|
|
6818
|
-
exports.addDisposableWindowListener = addDisposableWindowListener;
|
|
6819
6823
|
exports.getDirectionOrientation = getDirectionOrientation;
|
|
6820
6824
|
exports.getGridLocation = getGridLocation;
|
|
6821
6825
|
exports.getLocationOrientation = getLocationOrientation;
|