@theia/plugin-ext 1.34.0 → 1.34.2
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/lib/common/plugin-api-rpc.d.ts +1 -1
- package/lib/common/plugin-api-rpc.d.ts.map +1 -1
- package/lib/main/browser/main-context.d.ts.map +1 -1
- package/lib/main/browser/main-context.js +3 -0
- package/lib/main/browser/main-context.js.map +1 -1
- package/lib/main/browser/tabs/tabs-main.d.ts +33 -2
- package/lib/main/browser/tabs/tabs-main.d.ts.map +1 -1
- package/lib/main/browser/tabs/tabs-main.js +256 -6
- package/lib/main/browser/tabs/tabs-main.js.map +1 -1
- package/lib/plugin/tabs.d.ts.map +1 -1
- package/lib/plugin/tabs.js +10 -13
- package/lib/plugin/tabs.js.map +1 -1
- package/lib/plugin/tree/tree-views.d.ts +6 -3
- package/lib/plugin/tree/tree-views.d.ts.map +1 -1
- package/lib/plugin/tree/tree-views.js +32 -25
- package/lib/plugin/tree/tree-views.js.map +1 -1
- package/package.json +27 -26
- package/src/common/plugin-api-rpc.ts +1 -1
- package/src/main/browser/main-context.ts +4 -0
- package/src/main/browser/tabs/tabs-main.ts +287 -6
- package/src/plugin/tabs.ts +10 -14
- package/src/plugin/tree/tree-views.ts +33 -26
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-views.js","sourceRoot":"","sources":["../../../src/plugin/tree/tree-views.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree-views.js","sourceRoot":"","sources":["../../../src/plugin/tree/tree-views.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,34 +1,35 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/plugin-ext",
|
|
3
|
-
"version": "1.34.
|
|
3
|
+
"version": "1.34.2",
|
|
4
4
|
"description": "Theia - Plugin Extension",
|
|
5
5
|
"main": "lib/common/index.js",
|
|
6
6
|
"typings": "lib/common/index.d.ts",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@theia/bulk-edit": "1.34.
|
|
9
|
-
"@theia/callhierarchy": "1.34.
|
|
10
|
-
"@theia/console": "1.34.
|
|
11
|
-
"@theia/core": "1.34.
|
|
12
|
-
"@theia/debug": "1.34.
|
|
13
|
-
"@theia/editor": "1.34.
|
|
14
|
-
"@theia/
|
|
15
|
-
"@theia/
|
|
16
|
-
"@theia/
|
|
17
|
-
"@theia/
|
|
18
|
-
"@theia/
|
|
8
|
+
"@theia/bulk-edit": "1.34.2",
|
|
9
|
+
"@theia/callhierarchy": "1.34.2",
|
|
10
|
+
"@theia/console": "1.34.2",
|
|
11
|
+
"@theia/core": "1.34.2",
|
|
12
|
+
"@theia/debug": "1.34.2",
|
|
13
|
+
"@theia/editor": "1.34.2",
|
|
14
|
+
"@theia/editor-preview": "1.34.2",
|
|
15
|
+
"@theia/file-search": "1.34.2",
|
|
16
|
+
"@theia/filesystem": "1.34.2",
|
|
17
|
+
"@theia/markers": "1.34.2",
|
|
18
|
+
"@theia/messages": "1.34.2",
|
|
19
|
+
"@theia/monaco": "1.34.2",
|
|
19
20
|
"@theia/monaco-editor-core": "1.72.3",
|
|
20
|
-
"@theia/navigator": "1.34.
|
|
21
|
-
"@theia/output": "1.34.
|
|
22
|
-
"@theia/plugin": "1.34.
|
|
23
|
-
"@theia/preferences": "1.34.
|
|
24
|
-
"@theia/scm": "1.34.
|
|
25
|
-
"@theia/search-in-workspace": "1.34.
|
|
26
|
-
"@theia/task": "1.34.
|
|
27
|
-
"@theia/terminal": "1.34.
|
|
28
|
-
"@theia/timeline": "1.34.
|
|
29
|
-
"@theia/typehierarchy": "1.34.
|
|
30
|
-
"@theia/variable-resolver": "1.34.
|
|
31
|
-
"@theia/workspace": "1.34.
|
|
21
|
+
"@theia/navigator": "1.34.2",
|
|
22
|
+
"@theia/output": "1.34.2",
|
|
23
|
+
"@theia/plugin": "1.34.2",
|
|
24
|
+
"@theia/preferences": "1.34.2",
|
|
25
|
+
"@theia/scm": "1.34.2",
|
|
26
|
+
"@theia/search-in-workspace": "1.34.2",
|
|
27
|
+
"@theia/task": "1.34.2",
|
|
28
|
+
"@theia/terminal": "1.34.2",
|
|
29
|
+
"@theia/timeline": "1.34.2",
|
|
30
|
+
"@theia/typehierarchy": "1.34.2",
|
|
31
|
+
"@theia/variable-resolver": "1.34.2",
|
|
32
|
+
"@theia/workspace": "1.34.2",
|
|
32
33
|
"@types/mime": "^2.0.1",
|
|
33
34
|
"@vscode/debugprotocol": "^1.51.0",
|
|
34
35
|
"decompress": "^4.2.1",
|
|
@@ -85,7 +86,7 @@
|
|
|
85
86
|
"watch": "theiaext watch"
|
|
86
87
|
},
|
|
87
88
|
"devDependencies": {
|
|
88
|
-
"@theia/ext-scripts": "1.34.
|
|
89
|
+
"@theia/ext-scripts": "1.34.2",
|
|
89
90
|
"@types/decompress": "^4.2.2",
|
|
90
91
|
"@types/escape-html": "^0.0.20",
|
|
91
92
|
"@types/lodash.clonedeep": "^4.5.3",
|
|
@@ -95,5 +96,5 @@
|
|
|
95
96
|
"nyc": {
|
|
96
97
|
"extends": "../../configs/nyc.json"
|
|
97
98
|
},
|
|
98
|
-
"gitHead": "
|
|
99
|
+
"gitHead": "dba940bd8c0f9f4b324dad0e90d570d499456f60"
|
|
99
100
|
}
|
|
@@ -58,6 +58,7 @@ import { WebviewViewsMainImpl } from './webview-views/webview-views-main';
|
|
|
58
58
|
import { MonacoLanguages } from '@theia/monaco/lib/browser/monaco-languages';
|
|
59
59
|
import { UntitledResourceResolver } from '@theia/core/lib/common/resource';
|
|
60
60
|
import { ThemeService } from '@theia/core/lib/browser/theming';
|
|
61
|
+
import { TabsMainImpl } from './tabs/tabs-main';
|
|
61
62
|
|
|
62
63
|
export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container): void {
|
|
63
64
|
const authenticationMain = new AuthenticationMainImpl(rpc, container);
|
|
@@ -180,4 +181,7 @@ export function setUpPluginApi(rpc: RPCProtocol, container: interfaces.Container
|
|
|
180
181
|
|
|
181
182
|
const commentsMain = new CommentsMainImp(rpc, container);
|
|
182
183
|
rpc.set(PLUGIN_RPC_CONTEXT.COMMENTS_MAIN, commentsMain);
|
|
184
|
+
|
|
185
|
+
const tabsMain = new TabsMainImpl(rpc, container);
|
|
186
|
+
rpc.set(PLUGIN_RPC_CONTEXT.TABS_MAIN, tabsMain);
|
|
183
187
|
}
|
|
@@ -15,16 +15,275 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { interfaces } from '@theia/core/shared/inversify';
|
|
18
|
-
|
|
19
|
-
import { TabsMain } from '../../../common/plugin-api-rpc';
|
|
18
|
+
import { ApplicationShell, PINNED_CLASS, Saveable, TabBar, Title, ViewContainer, Widget } from '@theia/core/lib/browser';
|
|
19
|
+
import { AnyInputDto, MAIN_RPC_CONTEXT, TabDto, TabGroupDto, TabInputKind, TabModelOperationKind, TabsExt, TabsMain } from '../../../common/plugin-api-rpc';
|
|
20
20
|
import { RPCProtocol } from '../../../common/rpc-protocol';
|
|
21
|
+
import { EditorPreviewWidget } from '@theia/editor-preview/lib/browser/editor-preview-widget';
|
|
22
|
+
import { Disposable } from '@theia/core/shared/vscode-languageserver-protocol';
|
|
23
|
+
import { MonacoDiffEditor } from '@theia/monaco/lib/browser/monaco-diff-editor';
|
|
24
|
+
import { toUriComponents } from '../hierarchy/hierarchy-types-converters';
|
|
25
|
+
import { TerminalWidget } from '@theia/terminal/lib/browser/base/terminal-widget';
|
|
26
|
+
import { DisposableCollection } from '@theia/core';
|
|
27
|
+
|
|
28
|
+
interface TabInfo {
|
|
29
|
+
tab: TabDto;
|
|
30
|
+
tabIndex: number;
|
|
31
|
+
group: TabGroupDto;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export class TabsMainImpl implements TabsMain, Disposable {
|
|
35
|
+
|
|
36
|
+
private readonly proxy: TabsExt;
|
|
37
|
+
private tabGroupModel = new Map<TabBar<Widget>, TabGroupDto>();
|
|
38
|
+
private tabInfoLookup = new Map<Title<Widget>, TabInfo>();
|
|
39
|
+
|
|
40
|
+
private applicationShell: ApplicationShell;
|
|
41
|
+
|
|
42
|
+
private disposableTabBarListeners: DisposableCollection = new DisposableCollection();
|
|
43
|
+
private toDisposeOnDestroy: DisposableCollection = new DisposableCollection();
|
|
21
44
|
|
|
22
|
-
|
|
45
|
+
private groupIdCounter = 0;
|
|
46
|
+
private currentActiveGroup: TabGroupDto;
|
|
47
|
+
|
|
48
|
+
private tabGroupChanged: boolean = false;
|
|
23
49
|
|
|
24
50
|
constructor(
|
|
25
51
|
rpc: RPCProtocol,
|
|
26
52
|
container: interfaces.Container
|
|
27
|
-
) {
|
|
53
|
+
) {
|
|
54
|
+
this.proxy = rpc.getProxy(MAIN_RPC_CONTEXT.TABS_EXT);
|
|
55
|
+
|
|
56
|
+
this.applicationShell = container.get(ApplicationShell);
|
|
57
|
+
this.createTabsModel();
|
|
58
|
+
|
|
59
|
+
const tabBars = this.applicationShell.mainPanel.tabBars();
|
|
60
|
+
for (let tabBar; tabBar = tabBars.next();) {
|
|
61
|
+
this.attachListenersToTabBar(tabBar);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
this.toDisposeOnDestroy.push(
|
|
65
|
+
this.applicationShell.mainPanelRenderer.onDidCreateTabBar(tabBar => {
|
|
66
|
+
this.attachListenersToTabBar(tabBar);
|
|
67
|
+
this.onTabGroupCreated(tabBar);
|
|
68
|
+
})
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetAdded, (mainPanel, widget) => {
|
|
72
|
+
if (this.tabGroupChanged || this.tabGroupModel.size === 0) {
|
|
73
|
+
this.tabGroupChanged = false;
|
|
74
|
+
this.createTabsModel();
|
|
75
|
+
// tab Open event is done in backend
|
|
76
|
+
} else {
|
|
77
|
+
const tabBar = mainPanel.findTabBar(widget.title)!;
|
|
78
|
+
const oldTabInfo = this.tabInfoLookup.get(widget.title);
|
|
79
|
+
const group = this.tabGroupModel.get(tabBar);
|
|
80
|
+
if (group !== oldTabInfo?.group) {
|
|
81
|
+
if (oldTabInfo) {
|
|
82
|
+
this.onTabClosed(oldTabInfo, widget.title);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
this.onTabCreated(tabBar, { index: tabBar.titles.indexOf(widget.title), title: widget.title });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetRemoved, (mainPanel, widget) => {
|
|
91
|
+
if (!(widget instanceof TabBar)) {
|
|
92
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, widget.title)!;
|
|
93
|
+
this.onTabClosed(tabInfo, widget.title);
|
|
94
|
+
if (this.tabGroupChanged) {
|
|
95
|
+
this.tabGroupChanged = false;
|
|
96
|
+
this.createTabsModel();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
protected createTabsModel(): void {
|
|
103
|
+
const newTabGroupModel = new Map<TabBar<Widget>, TabGroupDto>();
|
|
104
|
+
this.tabInfoLookup.clear();
|
|
105
|
+
this.disposableTabBarListeners.dispose();
|
|
106
|
+
this.applicationShell.mainAreaTabBars.forEach(tabBar => {
|
|
107
|
+
this.attachListenersToTabBar(tabBar);
|
|
108
|
+
const groupDto = this.createTabGroupDto(tabBar);
|
|
109
|
+
tabBar.titles.forEach((title, index) => this.tabInfoLookup.set(title, { group: groupDto, tab: groupDto.tabs[index], tabIndex: index }));
|
|
110
|
+
newTabGroupModel.set(tabBar, groupDto);
|
|
111
|
+
});
|
|
112
|
+
if (newTabGroupModel.size > 0 && Array.from(newTabGroupModel.values()).indexOf(this.currentActiveGroup) < 0) {
|
|
113
|
+
this.currentActiveGroup = this.tabInfoLookup.get(this.applicationShell.mainPanel.currentTitle!)?.group ?? newTabGroupModel.values().next().value;
|
|
114
|
+
this.currentActiveGroup.isActive = true;
|
|
115
|
+
}
|
|
116
|
+
this.tabGroupModel = newTabGroupModel;
|
|
117
|
+
this.proxy.$acceptEditorTabModel(Array.from(this.tabGroupModel.values()));
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
protected createTabDto(tabTitle: Title<Widget>, groupId: number): TabDto {
|
|
121
|
+
const widget = tabTitle.owner;
|
|
122
|
+
return {
|
|
123
|
+
id: this.createTabId(tabTitle, groupId),
|
|
124
|
+
label: tabTitle.label,
|
|
125
|
+
input: this.evaluateTabDtoInput(widget),
|
|
126
|
+
isActive: tabTitle.owner.isVisible,
|
|
127
|
+
isPinned: tabTitle.className.includes(PINNED_CLASS),
|
|
128
|
+
isDirty: Saveable.isDirty(widget),
|
|
129
|
+
isPreview: widget instanceof EditorPreviewWidget && widget.isPreview
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
protected createTabId(tabTitle: Title<Widget>, groupId: number): string {
|
|
134
|
+
return `${groupId}~${tabTitle.owner.id}`;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
protected createTabGroupDto(tabBar: TabBar<Widget>): TabGroupDto {
|
|
138
|
+
const oldDto = this.tabGroupModel.get(tabBar);
|
|
139
|
+
const groupId = oldDto?.groupId ?? this.groupIdCounter++;
|
|
140
|
+
const tabs = tabBar.titles.map(title => this.createTabDto(title, groupId));
|
|
141
|
+
return {
|
|
142
|
+
groupId,
|
|
143
|
+
tabs,
|
|
144
|
+
isActive: false,
|
|
145
|
+
viewColumn: 1
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
protected attachListenersToTabBar(tabBar: TabBar<Widget> | undefined): void {
|
|
150
|
+
if (!tabBar) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
tabBar.titles.forEach(title => {
|
|
154
|
+
this.connectToSignal(this.disposableTabBarListeners, title.changed, this.onTabTitleChanged);
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
this.connectToSignal(this.disposableTabBarListeners, tabBar.tabMoved, this.onTabMoved);
|
|
158
|
+
this.connectToSignal(this.disposableTabBarListeners, tabBar.disposed, this.onTabGroupClosed);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
protected evaluateTabDtoInput(widget: Widget): AnyInputDto {
|
|
162
|
+
if (widget instanceof EditorPreviewWidget) {
|
|
163
|
+
if (widget.editor instanceof MonacoDiffEditor) {
|
|
164
|
+
return {
|
|
165
|
+
kind: TabInputKind.TextDiffInput,
|
|
166
|
+
original: toUriComponents(widget.editor.originalModel.uri),
|
|
167
|
+
modified: toUriComponents(widget.editor.modifiedModel.uri)
|
|
168
|
+
};
|
|
169
|
+
} else {
|
|
170
|
+
return {
|
|
171
|
+
kind: TabInputKind.TextInput,
|
|
172
|
+
uri: toUriComponents(widget.editor.uri.toString())
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
// TODO notebook support when implemented
|
|
176
|
+
} else if (widget instanceof ViewContainer) {
|
|
177
|
+
return {
|
|
178
|
+
kind: TabInputKind.WebviewEditorInput,
|
|
179
|
+
viewType: widget.id
|
|
180
|
+
};
|
|
181
|
+
} else if (widget instanceof TerminalWidget) {
|
|
182
|
+
return {
|
|
183
|
+
kind: TabInputKind.TerminalEditorInput
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
return { kind: TabInputKind.UnknownInput };
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
protected connectToSignal<T>(disposableList: DisposableCollection, signal: { connect(listener: T, context: unknown): void, disconnect(listener: T): void }, listener: T): void {
|
|
191
|
+
signal.connect(listener, this);
|
|
192
|
+
disposableList.push(Disposable.create(() => signal.disconnect(listener)));
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
protected tabDtosEqual(a: TabDto, b: TabDto): boolean {
|
|
196
|
+
return a.isActive === b.isActive &&
|
|
197
|
+
a.isDirty === b.isDirty &&
|
|
198
|
+
a.isPinned === b.isPinned &&
|
|
199
|
+
a.isPreview === b.isPreview &&
|
|
200
|
+
a.id === b.id;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
protected getOrRebuildModel<T, R>(map: Map<T, R>, key: T): R {
|
|
204
|
+
// something broke so we rebuild the model
|
|
205
|
+
let item = map.get(key);
|
|
206
|
+
if (!item) {
|
|
207
|
+
this.createTabsModel();
|
|
208
|
+
item = map.get(key)!;
|
|
209
|
+
}
|
|
210
|
+
return item;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// #region event listeners
|
|
214
|
+
private onTabCreated(tabBar: TabBar<Widget>, args: TabBar.ITabActivateRequestedArgs<Widget>): void {
|
|
215
|
+
const group = this.getOrRebuildModel(this.tabGroupModel, tabBar);
|
|
216
|
+
this.connectToSignal(this.disposableTabBarListeners, args.title.changed, this.onTabTitleChanged);
|
|
217
|
+
const tabDto = this.createTabDto(args.title, group.groupId);
|
|
218
|
+
this.tabInfoLookup.set(args.title, { group, tab: tabDto, tabIndex: args.index });
|
|
219
|
+
group.tabs.splice(args.index, 0, tabDto);
|
|
220
|
+
this.proxy.$acceptTabOperation({
|
|
221
|
+
kind: TabModelOperationKind.TAB_OPEN,
|
|
222
|
+
index: args.index,
|
|
223
|
+
tabDto,
|
|
224
|
+
groupId: group.groupId
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
private onTabTitleChanged(title: Title<Widget>): void {
|
|
229
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, title);
|
|
230
|
+
if (!tabInfo) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
const oldTabDto = tabInfo.tab;
|
|
234
|
+
const newTabDto = this.createTabDto(title, tabInfo.group.groupId);
|
|
235
|
+
if (newTabDto.isActive && !tabInfo.group.isActive) {
|
|
236
|
+
tabInfo.group.isActive = true;
|
|
237
|
+
this.currentActiveGroup.isActive = false;
|
|
238
|
+
this.currentActiveGroup = tabInfo.group;
|
|
239
|
+
this.proxy.$acceptTabGroupUpdate(tabInfo.group);
|
|
240
|
+
}
|
|
241
|
+
if (!this.tabDtosEqual(oldTabDto, newTabDto)) {
|
|
242
|
+
tabInfo.group.tabs[tabInfo.tabIndex] = newTabDto;
|
|
243
|
+
tabInfo.tab = newTabDto;
|
|
244
|
+
this.proxy.$acceptTabOperation({
|
|
245
|
+
kind: TabModelOperationKind.TAB_UPDATE,
|
|
246
|
+
index: tabInfo.tabIndex,
|
|
247
|
+
tabDto: newTabDto,
|
|
248
|
+
groupId: tabInfo.group.groupId
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
private onTabClosed(tabInfo: TabInfo, title: Title<Widget>): void {
|
|
254
|
+
tabInfo.group.tabs.splice(tabInfo.tabIndex, 1);
|
|
255
|
+
this.tabInfoLookup.delete(title);
|
|
256
|
+
this.proxy.$acceptTabOperation({
|
|
257
|
+
kind: TabModelOperationKind.TAB_CLOSE,
|
|
258
|
+
index: tabInfo.tabIndex,
|
|
259
|
+
tabDto: this.createTabDto(title, tabInfo.group.groupId),
|
|
260
|
+
groupId: tabInfo.group.groupId
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
private onTabMoved(tabBar: TabBar<Widget>, args: TabBar.ITabMovedArgs<Widget>): void {
|
|
265
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, args.title)!;
|
|
266
|
+
tabInfo.tabIndex = args.toIndex;
|
|
267
|
+
const tabDto = this.createTabDto(args.title, tabInfo.group.groupId);
|
|
268
|
+
tabInfo.group.tabs.splice(args.fromIndex, 1);
|
|
269
|
+
tabInfo.group.tabs.splice(args.toIndex, 0, tabDto);
|
|
270
|
+
this.proxy.$acceptTabOperation({
|
|
271
|
+
kind: TabModelOperationKind.TAB_MOVE,
|
|
272
|
+
index: args.toIndex,
|
|
273
|
+
tabDto,
|
|
274
|
+
groupId: tabInfo.group.groupId,
|
|
275
|
+
oldIndex: args.fromIndex
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
private onTabGroupCreated(tabBar: TabBar<Widget>): void {
|
|
280
|
+
this.tabGroupChanged = true;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
private onTabGroupClosed(tabBar: TabBar<Widget>): void {
|
|
284
|
+
this.tabGroupChanged = true;
|
|
285
|
+
}
|
|
286
|
+
// #endregion
|
|
28
287
|
|
|
29
288
|
// #region Messages received from Ext Host
|
|
30
289
|
$moveTab(tabId: string, index: number, viewColumn: number, preserveFocus?: boolean): void {
|
|
@@ -32,11 +291,33 @@ export class TabsMainImp implements TabsMain {
|
|
|
32
291
|
}
|
|
33
292
|
|
|
34
293
|
async $closeTab(tabIds: string[], preserveFocus?: boolean): Promise<boolean> {
|
|
35
|
-
|
|
294
|
+
const widgets: Widget[] = [];
|
|
295
|
+
for (const tabId of tabIds) {
|
|
296
|
+
const cleanedId = tabId.substring(tabId.indexOf('~') + 1);
|
|
297
|
+
const widget = this.applicationShell.getWidgetById(cleanedId);
|
|
298
|
+
if (widget) {
|
|
299
|
+
widgets.push(widget);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
await this.applicationShell.closeMany(widgets);
|
|
303
|
+
return true;
|
|
36
304
|
}
|
|
37
305
|
|
|
38
306
|
async $closeGroup(groupIds: number[], preserveFocus?: boolean): Promise<boolean> {
|
|
39
|
-
|
|
307
|
+
for (const groupId of groupIds) {
|
|
308
|
+
tabGroupModel: for (const [bar, groupDto] of this.tabGroupModel) {
|
|
309
|
+
if (groupDto.groupId === groupId) {
|
|
310
|
+
this.applicationShell.closeTabs(bar);
|
|
311
|
+
break tabGroupModel;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
return true;
|
|
40
316
|
}
|
|
41
317
|
// #endregion
|
|
318
|
+
|
|
319
|
+
dispose(): void {
|
|
320
|
+
this.toDisposeOnDestroy.dispose();
|
|
321
|
+
this.disposableTabBarListeners.dispose();
|
|
322
|
+
}
|
|
42
323
|
}
|
package/src/plugin/tabs.ts
CHANGED
|
@@ -291,14 +291,6 @@ export class TabsExtImpl implements TabsExt {
|
|
|
291
291
|
return this._closeTabs(tabsOrTabGroups as theia.Tab[], preserveFocus);
|
|
292
292
|
}
|
|
293
293
|
},
|
|
294
|
-
// move: async (tab: theia.Tab, viewColumn: ViewColumn, index: number, preserveFocus?: boolean) => {
|
|
295
|
-
// const extHostTab = this._findExtHostTabFromApi(tab);
|
|
296
|
-
// if (!extHostTab) {
|
|
297
|
-
// throw new Error('Invalid tab');
|
|
298
|
-
// }
|
|
299
|
-
// this._proxy.$moveTab(extHostTab.tabId, index, typeConverters.ViewColumn.from(viewColumn), preserveFocus);
|
|
300
|
-
// return;
|
|
301
|
-
// }
|
|
302
294
|
};
|
|
303
295
|
this.apiObject = Object.freeze(obj);
|
|
304
296
|
}
|
|
@@ -306,7 +298,6 @@ export class TabsExtImpl implements TabsExt {
|
|
|
306
298
|
}
|
|
307
299
|
|
|
308
300
|
$acceptEditorTabModel(tabGroups: TabGroupDto[]): void {
|
|
309
|
-
|
|
310
301
|
const groupIdsBefore = new Set(this.tabGroupArr.map(group => group.groupId));
|
|
311
302
|
const groupIdsAfter = new Set(tabGroups.map(dto => dto.groupId));
|
|
312
303
|
const diff = diffSets(groupIdsBefore, groupIdsAfter);
|
|
@@ -314,23 +305,28 @@ export class TabsExtImpl implements TabsExt {
|
|
|
314
305
|
const closed: theia.TabGroup[] = this.tabGroupArr.filter(group => diff.removed.includes(group.groupId)).map(group => group.apiObject);
|
|
315
306
|
const opened: theia.TabGroup[] = [];
|
|
316
307
|
const changed: theia.TabGroup[] = [];
|
|
308
|
+
const tabsOpened: theia.Tab[] = [];
|
|
317
309
|
|
|
318
310
|
this.tabGroupArr = tabGroups.map(tabGroup => {
|
|
319
311
|
const group = new TabGroupExt(tabGroup, () => this.activeGroupId);
|
|
320
312
|
if (diff.added.includes(group.groupId)) {
|
|
321
|
-
opened.push(group.apiObject);
|
|
313
|
+
opened.push({ activeTab: undefined, isActive: group.apiObject.isActive, tabs: [], viewColumn: group.apiObject.viewColumn });
|
|
314
|
+
tabsOpened.push(...group.apiObject.tabs);
|
|
322
315
|
} else {
|
|
323
316
|
changed.push(group.apiObject);
|
|
324
317
|
}
|
|
325
318
|
return group;
|
|
326
319
|
});
|
|
327
320
|
|
|
328
|
-
// Set the active tab group id
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
this.activeGroupId
|
|
321
|
+
// Set the active tab group id. skip if no tabgroups are open
|
|
322
|
+
if (tabGroups.length > 0) {
|
|
323
|
+
const activeTabGroupId = assertIsDefined(tabGroups.find(group => group.isActive === true)?.groupId);
|
|
324
|
+
if (this.activeGroupId !== activeTabGroupId) {
|
|
325
|
+
this.activeGroupId = activeTabGroupId;
|
|
326
|
+
}
|
|
332
327
|
}
|
|
333
328
|
this.onDidChangeTabGroups.fire(Object.freeze({ opened, closed, changed }));
|
|
329
|
+
this.onDidChangeTabs.fire({ opened: tabsOpened, changed: [], closed: [] });
|
|
334
330
|
}
|
|
335
331
|
|
|
336
332
|
$acceptTabGroupUpdate(groupDto: TabGroupDto): void {
|