dockview-core 1.10.1 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/dockviewGroupPanelApi.js +1 -1
- package/dist/cjs/api/dockviewPanelApi.d.ts +4 -1
- package/dist/cjs/api/dockviewPanelApi.js +10 -2
- package/dist/cjs/api/gridviewPanelApi.d.ts +1 -1
- package/dist/cjs/api/gridviewPanelApi.js +2 -2
- package/dist/cjs/api/panelApi.d.ts +8 -3
- package/dist/cjs/api/panelApi.js +13 -6
- package/dist/cjs/api/paneviewPanelApi.d.ts +1 -1
- package/dist/cjs/api/paneviewPanelApi.js +2 -2
- package/dist/cjs/api/splitviewPanelApi.d.ts +1 -1
- package/dist/cjs/api/splitviewPanelApi.js +2 -2
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +0 -2
- package/dist/cjs/dockview/components/tab/defaultTab.js +5 -14
- package/dist/cjs/dockview/deserializer.js +1 -1
- package/dist/cjs/dockview/dockviewComponent.js +3 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +7 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +16 -0
- package/dist/cjs/dockview/dockviewPanel.d.ts +1 -1
- package/dist/cjs/dockview/dockviewPanel.js +2 -2
- package/dist/cjs/gridview/gridviewPanel.js +1 -1
- package/dist/cjs/paneview/paneviewPanel.js +1 -1
- package/dist/cjs/splitview/splitviewPanel.js +1 -1
- package/dist/dockview-core.amd.js +52 -38
- 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 +51 -37
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +52 -38
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +52 -38
- 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 +52 -38
- 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 +51 -37
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/dockviewGroupPanelApi.js +1 -1
- package/dist/esm/api/dockviewPanelApi.d.ts +4 -1
- package/dist/esm/api/dockviewPanelApi.js +6 -2
- package/dist/esm/api/gridviewPanelApi.d.ts +1 -1
- package/dist/esm/api/gridviewPanelApi.js +2 -2
- package/dist/esm/api/panelApi.d.ts +8 -3
- package/dist/esm/api/panelApi.js +12 -6
- package/dist/esm/api/paneviewPanelApi.d.ts +1 -1
- package/dist/esm/api/paneviewPanelApi.js +2 -2
- package/dist/esm/api/splitviewPanelApi.d.ts +1 -1
- package/dist/esm/api/splitviewPanelApi.js +2 -2
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -2
- package/dist/esm/dockview/components/tab/defaultTab.js +5 -14
- package/dist/esm/dockview/deserializer.js +1 -1
- package/dist/esm/dockview/dockviewComponent.js +3 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +7 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.js +11 -0
- package/dist/esm/dockview/dockviewPanel.d.ts +1 -1
- package/dist/esm/dockview/dockviewPanel.js +2 -2
- package/dist/esm/gridview/gridviewPanel.js +1 -1
- package/dist/esm/paneview/paneviewPanel.js +1 -1
- package/dist/esm/splitview/splitviewPanel.js +1 -1
- package/dist/styles/dockview.css +8 -18
- package/package.json +1 -1
|
@@ -24,7 +24,7 @@ var NOT_INITIALIZED_MESSAGE = 'DockviewGroupPanelApiImpl not initialized';
|
|
|
24
24
|
var DockviewGroupPanelApiImpl = /** @class */ (function (_super) {
|
|
25
25
|
__extends(DockviewGroupPanelApiImpl, _super);
|
|
26
26
|
function DockviewGroupPanelApiImpl(id, accessor) {
|
|
27
|
-
var _this = _super.call(this, id) || this;
|
|
27
|
+
var _this = _super.call(this, id, '__dockviewgroup__') || this;
|
|
28
28
|
_this.accessor = accessor;
|
|
29
29
|
_this._onDidLocationChange = new events_1.Emitter();
|
|
30
30
|
_this.onDidLocationChange = _this._onDidLocationChange.event;
|
|
@@ -25,6 +25,7 @@ export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible' |
|
|
|
25
25
|
readonly title: string | undefined;
|
|
26
26
|
readonly onDidActiveGroupChange: Event<ActiveGroupEvent>;
|
|
27
27
|
readonly onDidGroupChange: Event<GroupChangedEvent>;
|
|
28
|
+
readonly onDidTitleChange: Event<TitleEvent>;
|
|
28
29
|
readonly onDidRendererChange: Event<RendererChangedEvent>;
|
|
29
30
|
readonly location: DockviewGroupLocation;
|
|
30
31
|
readonly onDidLocationChange: Event<DockviewGroupPanelFloatingChangeEvent>;
|
|
@@ -48,6 +49,7 @@ export declare class DockviewPanelApiImpl extends GridviewPanelApiImpl implement
|
|
|
48
49
|
private panel;
|
|
49
50
|
private readonly accessor;
|
|
50
51
|
private _group;
|
|
52
|
+
private _tabComponent;
|
|
51
53
|
readonly _onDidTitleChange: Emitter<TitleEvent>;
|
|
52
54
|
readonly onDidTitleChange: Event<TitleEvent>;
|
|
53
55
|
private readonly _onDidActiveGroupChange;
|
|
@@ -65,7 +67,8 @@ export declare class DockviewPanelApiImpl extends GridviewPanelApiImpl implement
|
|
|
65
67
|
get renderer(): DockviewPanelRenderer;
|
|
66
68
|
set group(value: DockviewGroupPanel);
|
|
67
69
|
get group(): DockviewGroupPanel;
|
|
68
|
-
|
|
70
|
+
get tabComponent(): string | undefined;
|
|
71
|
+
constructor(panel: DockviewPanel, group: DockviewGroupPanel, accessor: DockviewComponent, component: string, tabComponent?: string);
|
|
69
72
|
getWindow(): Window;
|
|
70
73
|
moveTo(options: {
|
|
71
74
|
group: DockviewGroupPanel;
|
|
@@ -21,8 +21,8 @@ var gridviewPanelApi_1 = require("./gridviewPanelApi");
|
|
|
21
21
|
var lifecycle_1 = require("../lifecycle");
|
|
22
22
|
var DockviewPanelApiImpl = /** @class */ (function (_super) {
|
|
23
23
|
__extends(DockviewPanelApiImpl, _super);
|
|
24
|
-
function DockviewPanelApiImpl(panel, group, accessor) {
|
|
25
|
-
var _this = _super.call(this, panel.id) || this;
|
|
24
|
+
function DockviewPanelApiImpl(panel, group, accessor, component, tabComponent) {
|
|
25
|
+
var _this = _super.call(this, panel.id, component) || this;
|
|
26
26
|
_this.panel = panel;
|
|
27
27
|
_this.accessor = accessor;
|
|
28
28
|
_this._onDidTitleChange = new events_1.Emitter();
|
|
@@ -36,6 +36,7 @@ var DockviewPanelApiImpl = /** @class */ (function (_super) {
|
|
|
36
36
|
_this._onDidLocationChange = new events_1.Emitter();
|
|
37
37
|
_this.onDidLocationChange = _this._onDidLocationChange.event;
|
|
38
38
|
_this.groupEventsDisposable = new lifecycle_1.MutableDisposable();
|
|
39
|
+
_this._tabComponent = tabComponent;
|
|
39
40
|
_this.initialize(panel);
|
|
40
41
|
_this._group = group;
|
|
41
42
|
_this.setupGroupEventListeners();
|
|
@@ -88,6 +89,13 @@ var DockviewPanelApiImpl = /** @class */ (function (_super) {
|
|
|
88
89
|
enumerable: false,
|
|
89
90
|
configurable: true
|
|
90
91
|
});
|
|
92
|
+
Object.defineProperty(DockviewPanelApiImpl.prototype, "tabComponent", {
|
|
93
|
+
get: function () {
|
|
94
|
+
return this._tabComponent;
|
|
95
|
+
},
|
|
96
|
+
enumerable: false,
|
|
97
|
+
configurable: true
|
|
98
|
+
});
|
|
91
99
|
DockviewPanelApiImpl.prototype.getWindow = function () {
|
|
92
100
|
return this.group.api.getWindow();
|
|
93
101
|
};
|
|
@@ -30,7 +30,7 @@ export declare class GridviewPanelApiImpl extends PanelApiImpl implements Gridvi
|
|
|
30
30
|
readonly onDidConstraintsChange: Event<GridConstraintChangeEvent>;
|
|
31
31
|
private readonly _onDidSizeChange;
|
|
32
32
|
readonly onDidSizeChange: Event<SizeEvent>;
|
|
33
|
-
constructor(id: string, panel?: IPanel);
|
|
33
|
+
constructor(id: string, component: string, panel?: IPanel);
|
|
34
34
|
setConstraints(value: GridConstraintChangeEvent): void;
|
|
35
35
|
setSize(event: SizeEvent): void;
|
|
36
36
|
}
|
|
@@ -20,8 +20,8 @@ var events_1 = require("../events");
|
|
|
20
20
|
var panelApi_1 = require("./panelApi");
|
|
21
21
|
var GridviewPanelApiImpl = /** @class */ (function (_super) {
|
|
22
22
|
__extends(GridviewPanelApiImpl, _super);
|
|
23
|
-
function GridviewPanelApiImpl(id, panel) {
|
|
24
|
-
var _this = _super.call(this, id) || this;
|
|
23
|
+
function GridviewPanelApiImpl(id, component, panel) {
|
|
24
|
+
var _this = _super.call(this, id, component) || this;
|
|
25
25
|
_this._onDidConstraintsChangeInternal = new events_1.Emitter();
|
|
26
26
|
_this.onDidConstraintsChangeInternal = _this._onDidConstraintsChangeInternal.event;
|
|
27
27
|
_this._onDidConstraintsChange = new events_1.Emitter();
|
|
@@ -19,6 +19,7 @@ export interface PanelApi {
|
|
|
19
19
|
readonly onDidFocusChange: Event<FocusEvent>;
|
|
20
20
|
readonly onDidVisibilityChange: Event<VisibilityEvent>;
|
|
21
21
|
readonly onDidActiveChange: Event<ActiveEvent>;
|
|
22
|
+
readonly onDidParametersChange: Event<Parameters>;
|
|
22
23
|
setActive(): void;
|
|
23
24
|
setVisible(isVisible: boolean): void;
|
|
24
25
|
updateParameters(parameters: Parameters): void;
|
|
@@ -47,6 +48,7 @@ export interface PanelApi {
|
|
|
47
48
|
*/
|
|
48
49
|
readonly height: number;
|
|
49
50
|
readonly onWillFocus: Event<WillFocusEvent>;
|
|
51
|
+
getParameters<T extends Parameters = Parameters>(): T;
|
|
50
52
|
}
|
|
51
53
|
export declare class WillFocusEvent extends DockviewEvent {
|
|
52
54
|
constructor();
|
|
@@ -56,11 +58,13 @@ export declare class WillFocusEvent extends DockviewEvent {
|
|
|
56
58
|
*/
|
|
57
59
|
export declare class PanelApiImpl extends CompositeDisposable implements PanelApi {
|
|
58
60
|
readonly id: string;
|
|
61
|
+
readonly component: string;
|
|
59
62
|
private _isFocused;
|
|
60
63
|
private _isActive;
|
|
61
64
|
private _isVisible;
|
|
62
65
|
private _width;
|
|
63
66
|
private _height;
|
|
67
|
+
private _parameters;
|
|
64
68
|
private readonly panelUpdatesDisposable;
|
|
65
69
|
readonly _onDidDimensionChange: Emitter<PanelDimensionChangeEvent>;
|
|
66
70
|
readonly onDidDimensionsChange: Event<PanelDimensionChangeEvent>;
|
|
@@ -76,14 +80,15 @@ export declare class PanelApiImpl extends CompositeDisposable implements PanelAp
|
|
|
76
80
|
readonly onDidActiveChange: Event<ActiveEvent>;
|
|
77
81
|
readonly _onActiveChange: Emitter<void>;
|
|
78
82
|
readonly onActiveChange: Event<void>;
|
|
79
|
-
readonly
|
|
80
|
-
readonly
|
|
83
|
+
readonly _onDidParametersChange: Emitter<Parameters>;
|
|
84
|
+
readonly onDidParametersChange: Event<Parameters>;
|
|
81
85
|
get isFocused(): boolean;
|
|
82
86
|
get isActive(): boolean;
|
|
83
87
|
get isVisible(): boolean;
|
|
84
88
|
get width(): number;
|
|
85
89
|
get height(): number;
|
|
86
|
-
constructor(id: string);
|
|
90
|
+
constructor(id: string, component: string);
|
|
91
|
+
getParameters<T extends Parameters = Parameters>(): T;
|
|
87
92
|
initialize(panel: IPanel): void;
|
|
88
93
|
setVisible(isVisible: boolean): void;
|
|
89
94
|
setActive(): void;
|
package/dist/cjs/api/panelApi.js
CHANGED
|
@@ -31,14 +31,16 @@ exports.WillFocusEvent = WillFocusEvent;
|
|
|
31
31
|
*/
|
|
32
32
|
var PanelApiImpl = /** @class */ (function (_super) {
|
|
33
33
|
__extends(PanelApiImpl, _super);
|
|
34
|
-
function PanelApiImpl(id) {
|
|
34
|
+
function PanelApiImpl(id, component) {
|
|
35
35
|
var _this = _super.call(this) || this;
|
|
36
36
|
_this.id = id;
|
|
37
|
+
_this.component = component;
|
|
37
38
|
_this._isFocused = false;
|
|
38
39
|
_this._isActive = false;
|
|
39
40
|
_this._isVisible = true;
|
|
40
41
|
_this._width = 0;
|
|
41
42
|
_this._height = 0;
|
|
43
|
+
_this._parameters = {};
|
|
42
44
|
_this.panelUpdatesDisposable = new lifecycle_1.MutableDisposable();
|
|
43
45
|
_this._onDidDimensionChange = new events_1.Emitter();
|
|
44
46
|
_this.onDidDimensionsChange = _this._onDidDimensionChange.event;
|
|
@@ -56,8 +58,8 @@ var PanelApiImpl = /** @class */ (function (_super) {
|
|
|
56
58
|
_this.onDidActiveChange = _this._onDidActiveChange.event;
|
|
57
59
|
_this._onActiveChange = new events_1.Emitter();
|
|
58
60
|
_this.onActiveChange = _this._onActiveChange.event;
|
|
59
|
-
_this.
|
|
60
|
-
_this.
|
|
61
|
+
_this._onDidParametersChange = new events_1.Emitter();
|
|
62
|
+
_this.onDidParametersChange = _this._onDidParametersChange.event;
|
|
61
63
|
_this.addDisposables(_this.onDidFocusChange(function (event) {
|
|
62
64
|
_this._isFocused = event.isFocused;
|
|
63
65
|
}), _this.onDidActiveChange(function (event) {
|
|
@@ -67,7 +69,7 @@ var PanelApiImpl = /** @class */ (function (_super) {
|
|
|
67
69
|
}), _this.onDidDimensionsChange(function (event) {
|
|
68
70
|
_this._width = event.width;
|
|
69
71
|
_this._height = event.height;
|
|
70
|
-
}), _this.panelUpdatesDisposable, _this._onDidDimensionChange, _this._onDidChangeFocus, _this._onDidVisibilityChange, _this._onDidActiveChange, _this._onWillFocus, _this._onActiveChange, _this.
|
|
72
|
+
}), _this.panelUpdatesDisposable, _this._onDidDimensionChange, _this._onDidChangeFocus, _this._onDidVisibilityChange, _this._onDidActiveChange, _this._onWillFocus, _this._onActiveChange, _this._onWillFocus, _this._onWillVisibilityChange, _this._onDidParametersChange);
|
|
71
73
|
return _this;
|
|
72
74
|
}
|
|
73
75
|
Object.defineProperty(PanelApiImpl.prototype, "isFocused", {
|
|
@@ -105,8 +107,13 @@ var PanelApiImpl = /** @class */ (function (_super) {
|
|
|
105
107
|
enumerable: false,
|
|
106
108
|
configurable: true
|
|
107
109
|
});
|
|
110
|
+
PanelApiImpl.prototype.getParameters = function () {
|
|
111
|
+
return this._parameters;
|
|
112
|
+
};
|
|
108
113
|
PanelApiImpl.prototype.initialize = function (panel) {
|
|
109
|
-
|
|
114
|
+
var _this = this;
|
|
115
|
+
this.panelUpdatesDisposable.value = this._onDidParametersChange.event(function (parameters) {
|
|
116
|
+
_this._parameters = parameters;
|
|
110
117
|
panel.update({
|
|
111
118
|
params: parameters,
|
|
112
119
|
});
|
|
@@ -119,7 +126,7 @@ var PanelApiImpl = /** @class */ (function (_super) {
|
|
|
119
126
|
this._onActiveChange.fire();
|
|
120
127
|
};
|
|
121
128
|
PanelApiImpl.prototype.updateParameters = function (parameters) {
|
|
122
|
-
this.
|
|
129
|
+
this._onDidParametersChange.fire(parameters);
|
|
123
130
|
};
|
|
124
131
|
return PanelApiImpl;
|
|
125
132
|
}(lifecycle_1.CompositeDisposable));
|
|
@@ -20,7 +20,7 @@ export declare class PaneviewPanelApiImpl extends SplitviewPanelApiImpl implemen
|
|
|
20
20
|
readonly onMouseLeave: Event<MouseEvent>;
|
|
21
21
|
private _pane;
|
|
22
22
|
set pane(pane: PaneviewPanel);
|
|
23
|
-
constructor(id: string);
|
|
23
|
+
constructor(id: string, component: string);
|
|
24
24
|
setExpanded(isExpanded: boolean): void;
|
|
25
25
|
get isExpanded(): boolean;
|
|
26
26
|
}
|
|
@@ -20,8 +20,8 @@ var events_1 = require("../events");
|
|
|
20
20
|
var splitviewPanelApi_1 = require("./splitviewPanelApi");
|
|
21
21
|
var PaneviewPanelApiImpl = /** @class */ (function (_super) {
|
|
22
22
|
__extends(PaneviewPanelApiImpl, _super);
|
|
23
|
-
function PaneviewPanelApiImpl(id) {
|
|
24
|
-
var _this = _super.call(this, id) || this;
|
|
23
|
+
function PaneviewPanelApiImpl(id, component) {
|
|
24
|
+
var _this = _super.call(this, id, component) || this;
|
|
25
25
|
_this._onDidExpansionChange = new events_1.Emitter({
|
|
26
26
|
replay: true,
|
|
27
27
|
});
|
|
@@ -25,7 +25,7 @@ export declare class SplitviewPanelApiImpl extends PanelApiImpl implements Split
|
|
|
25
25
|
readonly onDidConstraintsChange: Event<PanelConstraintChangeEvent>;
|
|
26
26
|
readonly _onDidSizeChange: Emitter<PanelSizeEvent>;
|
|
27
27
|
readonly onDidSizeChange: Event<PanelSizeEvent>;
|
|
28
|
-
constructor(id: string);
|
|
28
|
+
constructor(id: string, component: string);
|
|
29
29
|
setConstraints(value: PanelConstraintChangeEvent2): void;
|
|
30
30
|
setSize(event: PanelSizeEvent): void;
|
|
31
31
|
}
|
|
@@ -21,8 +21,8 @@ var panelApi_1 = require("./panelApi");
|
|
|
21
21
|
var SplitviewPanelApiImpl = /** @class */ (function (_super) {
|
|
22
22
|
__extends(SplitviewPanelApiImpl, _super);
|
|
23
23
|
//
|
|
24
|
-
function SplitviewPanelApiImpl(id) {
|
|
25
|
-
var _this = _super.call(this, id) || this;
|
|
24
|
+
function SplitviewPanelApiImpl(id, component) {
|
|
25
|
+
var _this = _super.call(this, id, component) || this;
|
|
26
26
|
_this._onDidConstraintsChangeInternal = new events_1.Emitter();
|
|
27
27
|
_this.onDidConstraintsChangeInternal = _this._onDidConstraintsChangeInternal.event;
|
|
28
28
|
//
|
|
@@ -5,8 +5,6 @@ import { DockviewGroupPanel } from '../../dockviewGroupPanel';
|
|
|
5
5
|
export declare class DefaultTab extends CompositeDisposable implements ITabRenderer {
|
|
6
6
|
private _element;
|
|
7
7
|
private _content;
|
|
8
|
-
private _actionContainer;
|
|
9
|
-
private _list;
|
|
10
8
|
private action;
|
|
11
9
|
private params;
|
|
12
10
|
get element(): HTMLElement;
|
|
@@ -37,27 +37,18 @@ var DefaultTab = /** @class */ (function (_super) {
|
|
|
37
37
|
//
|
|
38
38
|
_this.params = {};
|
|
39
39
|
_this._element = document.createElement('div');
|
|
40
|
-
_this._element.className = 'default-tab';
|
|
40
|
+
_this._element.className = 'dv-default-tab';
|
|
41
41
|
//
|
|
42
42
|
_this._content = document.createElement('div');
|
|
43
|
-
_this._content.className = 'tab-content';
|
|
44
|
-
//
|
|
45
|
-
_this._actionContainer = document.createElement('div');
|
|
46
|
-
_this._actionContainer.className = 'action-container';
|
|
47
|
-
//
|
|
48
|
-
_this._list = document.createElement('ul');
|
|
49
|
-
_this._list.className = 'tab-list';
|
|
50
|
-
//
|
|
43
|
+
_this._content.className = 'dv-default-tab-content';
|
|
51
44
|
_this.action = document.createElement('div');
|
|
52
|
-
_this.action.className = 'tab-action';
|
|
45
|
+
_this.action.className = 'dv-default-tab-action';
|
|
53
46
|
_this.action.appendChild((0, svg_1.createCloseButton)());
|
|
54
47
|
//
|
|
55
48
|
_this._element.appendChild(_this._content);
|
|
56
|
-
_this._element.appendChild(_this.
|
|
57
|
-
_this._actionContainer.appendChild(_this._list);
|
|
58
|
-
_this._list.appendChild(_this.action);
|
|
49
|
+
_this._element.appendChild(_this.action);
|
|
59
50
|
//
|
|
60
|
-
_this.addDisposables((0, events_1.addDisposableListener)(_this.
|
|
51
|
+
_this.addDisposables((0, events_1.addDisposableListener)(_this.action, 'mousedown', function (ev) {
|
|
61
52
|
ev.preventDefault();
|
|
62
53
|
}));
|
|
63
54
|
_this.render();
|
|
@@ -21,7 +21,7 @@ var DefaultDockviewDeserialzier = /** @class */ (function () {
|
|
|
21
21
|
? (_b = viewData.tab) === null || _b === void 0 ? void 0 : _b.id
|
|
22
22
|
: panelData.tabComponent;
|
|
23
23
|
var view = new dockviewPanelModel_1.DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
|
|
24
|
-
var panel = new dockviewPanel_1.DockviewPanel(panelId, this.accessor, new component_api_1.DockviewApi(this.accessor), group, view, {
|
|
24
|
+
var panel = new dockviewPanel_1.DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new component_api_1.DockviewApi(this.accessor), group, view, {
|
|
25
25
|
renderer: panelData.renderer,
|
|
26
26
|
});
|
|
27
27
|
panel.init({
|
|
@@ -1713,6 +1713,8 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1713
1713
|
if (_this._onDidActivePanelChange.value !== event.panel) {
|
|
1714
1714
|
_this._onDidActivePanelChange.fire(event.panel);
|
|
1715
1715
|
}
|
|
1716
|
+
}), events_1.Event.any(view.model.onDidPanelTitleChange, view.model.onDidPanelParametersChange)(function () {
|
|
1717
|
+
_this._bufferOnDidLayoutChange.fire();
|
|
1716
1718
|
}));
|
|
1717
1719
|
this._groups.set(view.id, { value: view, disposable: disposable });
|
|
1718
1720
|
}
|
|
@@ -1725,7 +1727,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1725
1727
|
var contentComponent = options.component;
|
|
1726
1728
|
var tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
|
|
1727
1729
|
var view = new dockviewPanelModel_1.DockviewPanelModel(this, options.id, contentComponent, tabComponent);
|
|
1728
|
-
var panel = new dockviewPanel_1.DockviewPanel(options.id, this, this._api, group, view, { renderer: options.renderer });
|
|
1730
|
+
var panel = new dockviewPanel_1.DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
|
|
1729
1731
|
panel.init({
|
|
1730
1732
|
title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
|
|
1731
1733
|
params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
|
|
@@ -5,11 +5,12 @@ import { DockviewComponent } from './dockviewComponent';
|
|
|
5
5
|
import { DockviewEvent, Event, IDockviewEvent } from '../events';
|
|
6
6
|
import { IViewSize } from '../gridview/gridview';
|
|
7
7
|
import { CompositeDisposable } from '../lifecycle';
|
|
8
|
-
import { IPanel, PanelInitParameters, PanelUpdateEvent } from '../panel/types';
|
|
8
|
+
import { IPanel, PanelInitParameters, PanelUpdateEvent, Parameters } from '../panel/types';
|
|
9
9
|
import { GroupDragEvent, TabDragEvent } from './components/titlebar/tabsContainer';
|
|
10
10
|
import { DockviewGroupPanel } from './dockviewGroupPanel';
|
|
11
11
|
import { IDockviewPanel } from './dockviewPanel';
|
|
12
12
|
import { OverlayRenderContainer } from '../overlayRenderContainer';
|
|
13
|
+
import { TitleEvent } from '../api/dockviewPanelApi';
|
|
13
14
|
interface GroupMoveEvent {
|
|
14
15
|
groupId: string;
|
|
15
16
|
itemId?: string;
|
|
@@ -149,6 +150,7 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
|
|
|
149
150
|
private _width;
|
|
150
151
|
private _height;
|
|
151
152
|
private _panels;
|
|
153
|
+
private readonly _panelDisposables;
|
|
152
154
|
private readonly _onMove;
|
|
153
155
|
readonly onMove: Event<GroupMoveEvent>;
|
|
154
156
|
private readonly _onDidDrop;
|
|
@@ -163,6 +165,10 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
|
|
|
163
165
|
readonly onGroupDragStart: Event<GroupDragEvent>;
|
|
164
166
|
private readonly _onDidAddPanel;
|
|
165
167
|
readonly onDidAddPanel: Event<DockviewGroupChangeEvent>;
|
|
168
|
+
private readonly _onDidPanelTitleChange;
|
|
169
|
+
readonly onDidPanelTitleChange: Event<TitleEvent>;
|
|
170
|
+
private readonly _onDidPanelParametersChange;
|
|
171
|
+
readonly onDidPanelParametersChange: Event<Parameters>;
|
|
166
172
|
private readonly _onDidRemovePanel;
|
|
167
173
|
readonly onDidRemovePanel: Event<DockviewGroupChangeEvent>;
|
|
168
174
|
private readonly _onDidActivePanelChange;
|
|
@@ -182,6 +182,7 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
|
|
|
182
182
|
_this._width = 0;
|
|
183
183
|
_this._height = 0;
|
|
184
184
|
_this._panels = [];
|
|
185
|
+
_this._panelDisposables = new Map();
|
|
185
186
|
_this._onMove = new events_1.Emitter();
|
|
186
187
|
_this.onMove = _this._onMove.event;
|
|
187
188
|
_this._onDidDrop = new events_1.Emitter();
|
|
@@ -196,6 +197,10 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
|
|
|
196
197
|
_this.onGroupDragStart = _this._onGroupDragStart.event;
|
|
197
198
|
_this._onDidAddPanel = new events_1.Emitter();
|
|
198
199
|
_this.onDidAddPanel = _this._onDidAddPanel.event;
|
|
200
|
+
_this._onDidPanelTitleChange = new events_1.Emitter();
|
|
201
|
+
_this.onDidPanelTitleChange = _this._onDidPanelTitleChange.event;
|
|
202
|
+
_this._onDidPanelParametersChange = new events_1.Emitter();
|
|
203
|
+
_this.onDidPanelParametersChange = _this._onDidPanelParametersChange.event;
|
|
199
204
|
_this._onDidRemovePanel = new events_1.Emitter();
|
|
200
205
|
_this.onDidRemovePanel = _this._onDidRemovePanel.event;
|
|
201
206
|
_this._onDidActivePanelChange = new events_1.Emitter();
|
|
@@ -619,9 +624,15 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
|
|
|
619
624
|
if (this.mostRecentlyUsed.includes(panel)) {
|
|
620
625
|
this.mostRecentlyUsed.splice(this.mostRecentlyUsed.indexOf(panel), 1);
|
|
621
626
|
}
|
|
627
|
+
var disposable = this._panelDisposables.get(panel.id);
|
|
628
|
+
if (disposable) {
|
|
629
|
+
disposable.dispose();
|
|
630
|
+
this._panelDisposables.delete(panel.id);
|
|
631
|
+
}
|
|
622
632
|
this._onDidRemovePanel.fire({ panel: panel });
|
|
623
633
|
};
|
|
624
634
|
DockviewGroupPanelModel.prototype.doAddPanel = function (panel, index, options) {
|
|
635
|
+
var _this = this;
|
|
625
636
|
if (index === void 0) { index = this.panels.length; }
|
|
626
637
|
if (options === void 0) { options = { skipSetActive: false }; }
|
|
627
638
|
var existingPanel = this._panels.indexOf(panel);
|
|
@@ -638,6 +649,11 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
|
|
|
638
649
|
}
|
|
639
650
|
this.updateMru(panel);
|
|
640
651
|
this.panels.splice(index, 0, panel);
|
|
652
|
+
this._panelDisposables.set(panel.id, new lifecycle_1.CompositeDisposable(panel.api.onDidTitleChange(function (event) {
|
|
653
|
+
return _this._onDidPanelTitleChange.fire(event);
|
|
654
|
+
}), panel.api.onDidParametersChange(function (event) {
|
|
655
|
+
return _this._onDidPanelParametersChange.fire(event);
|
|
656
|
+
})));
|
|
641
657
|
this._onDidAddPanel.fire({ panel: panel });
|
|
642
658
|
};
|
|
643
659
|
DockviewGroupPanelModel.prototype.doSetActivePanel = function (panel) {
|
|
@@ -36,7 +36,7 @@ export declare class DockviewPanel extends CompositeDisposable implements IDockv
|
|
|
36
36
|
get title(): string | undefined;
|
|
37
37
|
get group(): DockviewGroupPanel;
|
|
38
38
|
get renderer(): DockviewPanelRenderer;
|
|
39
|
-
constructor(id: string, accessor: DockviewComponent, containerApi: DockviewApi, group: DockviewGroupPanel, view: IDockviewPanelModel, options: {
|
|
39
|
+
constructor(id: string, component: string, tabComponent: string | undefined, accessor: DockviewComponent, containerApi: DockviewApi, group: DockviewGroupPanel, view: IDockviewPanelModel, options: {
|
|
40
40
|
renderer?: DockviewPanelRenderer;
|
|
41
41
|
});
|
|
42
42
|
init(params: IGroupPanelInitParameters): void;
|
|
@@ -43,7 +43,7 @@ var lifecycle_1 = require("../lifecycle");
|
|
|
43
43
|
var panelApi_1 = require("../api/panelApi");
|
|
44
44
|
var DockviewPanel = /** @class */ (function (_super) {
|
|
45
45
|
__extends(DockviewPanel, _super);
|
|
46
|
-
function DockviewPanel(id, accessor, containerApi, group, view, options) {
|
|
46
|
+
function DockviewPanel(id, component, tabComponent, accessor, containerApi, group, view, options) {
|
|
47
47
|
var _this = _super.call(this) || this;
|
|
48
48
|
_this.id = id;
|
|
49
49
|
_this.accessor = accessor;
|
|
@@ -51,7 +51,7 @@ var DockviewPanel = /** @class */ (function (_super) {
|
|
|
51
51
|
_this.view = view;
|
|
52
52
|
_this._renderer = options.renderer;
|
|
53
53
|
_this._group = group;
|
|
54
|
-
_this.api = new dockviewPanelApi_1.DockviewPanelApiImpl(_this, _this._group, accessor);
|
|
54
|
+
_this.api = new dockviewPanelApi_1.DockviewPanelApiImpl(_this, _this._group, accessor, component, tabComponent);
|
|
55
55
|
_this.addDisposables(_this.api.onActiveChange(function () {
|
|
56
56
|
accessor.setActivePanel(_this);
|
|
57
57
|
}), _this.api.onDidSizeChange(function (event) {
|
|
@@ -33,7 +33,7 @@ var events_1 = require("../events");
|
|
|
33
33
|
var GridviewPanel = /** @class */ (function (_super) {
|
|
34
34
|
__extends(GridviewPanel, _super);
|
|
35
35
|
function GridviewPanel(id, component, options, api) {
|
|
36
|
-
var _this = _super.call(this, id, component, api !== null && api !== void 0 ? api : new gridviewPanelApi_1.GridviewPanelApiImpl(id)) || this;
|
|
36
|
+
var _this = _super.call(this, id, component, api !== null && api !== void 0 ? api : new gridviewPanelApi_1.GridviewPanelApiImpl(id, component)) || this;
|
|
37
37
|
_this._evaluatedMinimumWidth = 0;
|
|
38
38
|
_this._evaluatedMaximumWidth = Number.MAX_SAFE_INTEGER;
|
|
39
39
|
_this._evaluatedMinimumHeight = 0;
|
|
@@ -51,7 +51,7 @@ var splitview_1 = require("../splitview/splitview");
|
|
|
51
51
|
var PaneviewPanel = /** @class */ (function (_super) {
|
|
52
52
|
__extends(PaneviewPanel, _super);
|
|
53
53
|
function PaneviewPanel(id, component, headerComponent, orientation, isExpanded, isHeaderVisible) {
|
|
54
|
-
var _this = _super.call(this, id, component, new paneviewPanelApi_1.PaneviewPanelApiImpl(id)) || this;
|
|
54
|
+
var _this = _super.call(this, id, component, new paneviewPanelApi_1.PaneviewPanelApiImpl(id, component)) || this;
|
|
55
55
|
_this.headerComponent = headerComponent;
|
|
56
56
|
_this._onDidChangeExpansionState = new events_1.Emitter({ replay: true });
|
|
57
57
|
_this.onDidChangeExpansionState = _this._onDidChangeExpansionState.event;
|
|
@@ -50,7 +50,7 @@ var events_1 = require("../events");
|
|
|
50
50
|
var SplitviewPanel = /** @class */ (function (_super) {
|
|
51
51
|
__extends(SplitviewPanel, _super);
|
|
52
52
|
function SplitviewPanel(id, componentName) {
|
|
53
|
-
var _this = _super.call(this, id, componentName, new splitviewPanelApi_1.SplitviewPanelApiImpl(id)) || this;
|
|
53
|
+
var _this = _super.call(this, id, componentName, new splitviewPanelApi_1.SplitviewPanelApiImpl(id, componentName)) || this;
|
|
54
54
|
_this._evaluatedMinimumSize = 0;
|
|
55
55
|
_this._evaluatedMaximumSize = Number.POSITIVE_INFINITY;
|
|
56
56
|
_this._minimumSize = 0;
|