@theia/plugin-ext 1.34.0 → 1.35.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/lib/common/plugin-api-rpc-model.d.ts +18 -1
- package/lib/common/plugin-api-rpc-model.d.ts.map +1 -1
- package/lib/common/plugin-api-rpc-model.js.map +1 -1
- package/lib/common/plugin-api-rpc.d.ts +11 -6
- package/lib/common/plugin-api-rpc.d.ts.map +1 -1
- package/lib/common/plugin-api-rpc.js.map +1 -1
- package/lib/common/plugin-protocol.d.ts +30 -0
- package/lib/common/plugin-protocol.d.ts.map +1 -1
- package/lib/common/plugin-protocol.js.map +1 -1
- package/lib/hosted/browser/hosted-plugin.d.ts.map +1 -1
- package/lib/hosted/browser/hosted-plugin.js +10 -17
- package/lib/hosted/browser/hosted-plugin.js.map +1 -1
- package/lib/hosted/node/hosted-plugin-process.js.map +1 -1
- package/lib/hosted/node/plugin-activation-events.d.ts +7 -0
- package/lib/hosted/node/plugin-activation-events.d.ts.map +1 -0
- package/lib/hosted/node/plugin-activation-events.js +96 -0
- package/lib/hosted/node/plugin-activation-events.js.map +1 -0
- package/lib/hosted/node/plugin-manifest-loader.d.ts +2 -1
- package/lib/hosted/node/plugin-manifest-loader.d.ts.map +1 -1
- package/lib/hosted/node/plugin-manifest-loader.js +2 -1
- package/lib/hosted/node/plugin-manifest-loader.js.map +1 -1
- package/lib/hosted/node/scanners/scanner-theia.d.ts.map +1 -1
- package/lib/hosted/node/scanners/scanner-theia.js +27 -36
- package/lib/hosted/node/scanners/scanner-theia.js.map +1 -1
- package/lib/main/browser/data-transfer/data-transfer-type-converters.d.ts +9 -0
- package/lib/main/browser/data-transfer/data-transfer-type-converters.d.ts.map +1 -0
- package/lib/main/browser/data-transfer/data-transfer-type-converters.js +65 -0
- package/lib/main/browser/data-transfer/data-transfer-type-converters.js.map +1 -0
- package/lib/main/browser/dialogs/modal-notification.d.ts.map +1 -1
- package/lib/main/browser/dialogs/modal-notification.js +4 -2
- package/lib/main/browser/dialogs/modal-notification.js.map +1 -1
- package/lib/main/browser/languages-main.d.ts +8 -1
- package/lib/main/browser/languages-main.d.ts.map +1 -1
- package/lib/main/browser/languages-main.js +26 -2
- package/lib/main/browser/languages-main.js.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/plugin-ext-frontend-module.d.ts.map +1 -1
- package/lib/main/browser/plugin-ext-frontend-module.js +3 -0
- package/lib/main/browser/plugin-ext-frontend-module.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/main/browser/text-editors-main.d.ts +2 -2
- package/lib/main/browser/text-editors-main.d.ts.map +1 -1
- package/lib/main/browser/text-editors-main.js +2 -2
- package/lib/main/browser/text-editors-main.js.map +1 -1
- package/lib/main/browser/webview/webview-context-keys.d.ts +13 -0
- package/lib/main/browser/webview/webview-context-keys.d.ts.map +1 -0
- package/lib/main/browser/webview/webview-context-keys.js +64 -0
- package/lib/main/browser/webview/webview-context-keys.js.map +1 -0
- package/lib/plugin/dialogs.js +2 -2
- package/lib/plugin/dialogs.js.map +1 -1
- package/lib/plugin/file-system-ext-impl.d.ts +11 -5
- package/lib/plugin/file-system-ext-impl.d.ts.map +1 -1
- package/lib/plugin/file-system-ext-impl.js +8 -16
- package/lib/plugin/file-system-ext-impl.js.map +1 -1
- package/lib/plugin/known-commands.d.ts.map +1 -1
- package/lib/plugin/known-commands.js +13 -0
- package/lib/plugin/known-commands.js.map +1 -1
- package/lib/plugin/languages/document-drop-edit.d.ts +16 -0
- package/lib/plugin/languages/document-drop-edit.d.ts.map +1 -0
- package/lib/plugin/languages/document-drop-edit.js +23 -0
- package/lib/plugin/languages/document-drop-edit.js.map +1 -0
- package/lib/plugin/languages.d.ts +9 -2
- package/lib/plugin/languages.d.ts.map +1 -1
- package/lib/plugin/languages.js +27 -1
- package/lib/plugin/languages.js.map +1 -1
- package/lib/plugin/plugin-context.d.ts.map +1 -1
- package/lib/plugin/plugin-context.js +8 -4
- package/lib/plugin/plugin-context.js.map +1 -1
- package/lib/plugin/preference-registry.d.ts +5 -3
- package/lib/plugin/preference-registry.d.ts.map +1 -1
- package/lib/plugin/preference-registry.js +31 -42
- package/lib/plugin/preference-registry.js.map +1 -1
- package/lib/plugin/preference-registry.spec.js +29 -41
- package/lib/plugin/preference-registry.spec.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/text-editors.d.ts +1 -1
- package/lib/plugin/text-editors.d.ts.map +1 -1
- package/lib/plugin/text-editors.js +2 -2
- package/lib/plugin/text-editors.js.map +1 -1
- package/lib/plugin/type-converters.d.ts +6 -0
- package/lib/plugin/type-converters.d.ts.map +1 -1
- package/lib/plugin/type-converters.js +37 -1
- package/lib/plugin/type-converters.js.map +1 -1
- package/lib/plugin/types-impl.d.ts +5 -0
- package/lib/plugin/types-impl.d.ts.map +1 -1
- package/lib/plugin/types-impl.js +13 -3
- package/lib/plugin/types-impl.js.map +1 -1
- package/package.json +27 -26
- package/src/common/plugin-api-rpc-model.ts +22 -1
- package/src/common/plugin-api-rpc.ts +19 -6
- package/src/common/plugin-protocol.ts +32 -4
- package/src/hosted/browser/hosted-plugin.ts +9 -16
- package/src/hosted/node/hosted-plugin-process.ts +2 -2
- package/src/hosted/node/plugin-activation-events.ts +111 -0
- package/src/hosted/node/plugin-manifest-loader.ts +4 -3
- package/src/hosted/node/scanners/scanner-theia.ts +59 -75
- package/src/main/browser/data-transfer/data-transfer-type-converters.ts +70 -0
- package/src/main/browser/dialogs/modal-notification.ts +4 -2
- package/src/main/browser/languages-main.ts +34 -4
- package/src/main/browser/main-context.ts +4 -0
- package/src/main/browser/plugin-ext-frontend-module.ts +3 -0
- package/src/main/browser/tabs/tabs-main.ts +287 -6
- package/src/main/browser/text-editors-main.ts +3 -2
- package/src/main/browser/webview/webview-context-keys.ts +49 -0
- package/src/plugin/dialogs.ts +2 -2
- package/src/plugin/file-system-ext-impl.ts +8 -18
- package/src/plugin/known-commands.ts +16 -1
- package/src/plugin/languages/document-drop-edit.ts +44 -0
- package/src/plugin/languages.ts +41 -3
- package/src/plugin/plugin-context.ts +9 -4
- package/src/plugin/preference-registry.spec.ts +29 -45
- package/src/plugin/preference-registry.ts +33 -45
- package/src/plugin/tabs.ts +10 -14
- package/src/plugin/text-editors.ts +2 -2
- package/src/plugin/type-converters.ts +37 -0
- package/src/plugin/types-impl.ts +11 -0
|
@@ -15,19 +15,269 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
exports.TabsMainImpl = void 0;
|
|
19
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
20
|
+
const plugin_api_rpc_1 = require("../../../common/plugin-api-rpc");
|
|
21
|
+
const editor_preview_widget_1 = require("@theia/editor-preview/lib/browser/editor-preview-widget");
|
|
22
|
+
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
23
|
+
const monaco_diff_editor_1 = require("@theia/monaco/lib/browser/monaco-diff-editor");
|
|
24
|
+
const hierarchy_types_converters_1 = require("../hierarchy/hierarchy-types-converters");
|
|
25
|
+
const terminal_widget_1 = require("@theia/terminal/lib/browser/base/terminal-widget");
|
|
26
|
+
const core_1 = require("@theia/core");
|
|
27
|
+
class TabsMainImpl {
|
|
28
|
+
constructor(rpc, container) {
|
|
29
|
+
this.tabGroupModel = new Map();
|
|
30
|
+
this.tabInfoLookup = new Map();
|
|
31
|
+
this.disposableTabBarListeners = new core_1.DisposableCollection();
|
|
32
|
+
this.toDisposeOnDestroy = new core_1.DisposableCollection();
|
|
33
|
+
this.groupIdCounter = 0;
|
|
34
|
+
this.tabGroupChanged = false;
|
|
35
|
+
this.proxy = rpc.getProxy(plugin_api_rpc_1.MAIN_RPC_CONTEXT.TABS_EXT);
|
|
36
|
+
this.applicationShell = container.get(browser_1.ApplicationShell);
|
|
37
|
+
this.createTabsModel();
|
|
38
|
+
const tabBars = this.applicationShell.mainPanel.tabBars();
|
|
39
|
+
for (let tabBar; tabBar = tabBars.next();) {
|
|
40
|
+
this.attachListenersToTabBar(tabBar);
|
|
41
|
+
}
|
|
42
|
+
this.toDisposeOnDestroy.push(this.applicationShell.mainPanelRenderer.onDidCreateTabBar(tabBar => {
|
|
43
|
+
this.attachListenersToTabBar(tabBar);
|
|
44
|
+
this.onTabGroupCreated(tabBar);
|
|
45
|
+
}));
|
|
46
|
+
this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetAdded, (mainPanel, widget) => {
|
|
47
|
+
if (this.tabGroupChanged || this.tabGroupModel.size === 0) {
|
|
48
|
+
this.tabGroupChanged = false;
|
|
49
|
+
this.createTabsModel();
|
|
50
|
+
// tab Open event is done in backend
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const tabBar = mainPanel.findTabBar(widget.title);
|
|
54
|
+
const oldTabInfo = this.tabInfoLookup.get(widget.title);
|
|
55
|
+
const group = this.tabGroupModel.get(tabBar);
|
|
56
|
+
if (group !== (oldTabInfo === null || oldTabInfo === void 0 ? void 0 : oldTabInfo.group)) {
|
|
57
|
+
if (oldTabInfo) {
|
|
58
|
+
this.onTabClosed(oldTabInfo, widget.title);
|
|
59
|
+
}
|
|
60
|
+
this.onTabCreated(tabBar, { index: tabBar.titles.indexOf(widget.title), title: widget.title });
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
this.connectToSignal(this.toDisposeOnDestroy, this.applicationShell.mainPanel.widgetRemoved, (mainPanel, widget) => {
|
|
65
|
+
if (!(widget instanceof browser_1.TabBar)) {
|
|
66
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, widget.title);
|
|
67
|
+
this.onTabClosed(tabInfo, widget.title);
|
|
68
|
+
if (this.tabGroupChanged) {
|
|
69
|
+
this.tabGroupChanged = false;
|
|
70
|
+
this.createTabsModel();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
createTabsModel() {
|
|
76
|
+
var _a, _b;
|
|
77
|
+
const newTabGroupModel = new Map();
|
|
78
|
+
this.tabInfoLookup.clear();
|
|
79
|
+
this.disposableTabBarListeners.dispose();
|
|
80
|
+
this.applicationShell.mainAreaTabBars.forEach(tabBar => {
|
|
81
|
+
this.attachListenersToTabBar(tabBar);
|
|
82
|
+
const groupDto = this.createTabGroupDto(tabBar);
|
|
83
|
+
tabBar.titles.forEach((title, index) => this.tabInfoLookup.set(title, { group: groupDto, tab: groupDto.tabs[index], tabIndex: index }));
|
|
84
|
+
newTabGroupModel.set(tabBar, groupDto);
|
|
85
|
+
});
|
|
86
|
+
if (newTabGroupModel.size > 0 && Array.from(newTabGroupModel.values()).indexOf(this.currentActiveGroup) < 0) {
|
|
87
|
+
this.currentActiveGroup = (_b = (_a = this.tabInfoLookup.get(this.applicationShell.mainPanel.currentTitle)) === null || _a === void 0 ? void 0 : _a.group) !== null && _b !== void 0 ? _b : newTabGroupModel.values().next().value;
|
|
88
|
+
this.currentActiveGroup.isActive = true;
|
|
89
|
+
}
|
|
90
|
+
this.tabGroupModel = newTabGroupModel;
|
|
91
|
+
this.proxy.$acceptEditorTabModel(Array.from(this.tabGroupModel.values()));
|
|
92
|
+
}
|
|
93
|
+
createTabDto(tabTitle, groupId) {
|
|
94
|
+
const widget = tabTitle.owner;
|
|
95
|
+
return {
|
|
96
|
+
id: this.createTabId(tabTitle, groupId),
|
|
97
|
+
label: tabTitle.label,
|
|
98
|
+
input: this.evaluateTabDtoInput(widget),
|
|
99
|
+
isActive: tabTitle.owner.isVisible,
|
|
100
|
+
isPinned: tabTitle.className.includes(browser_1.PINNED_CLASS),
|
|
101
|
+
isDirty: browser_1.Saveable.isDirty(widget),
|
|
102
|
+
isPreview: widget instanceof editor_preview_widget_1.EditorPreviewWidget && widget.isPreview
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
createTabId(tabTitle, groupId) {
|
|
106
|
+
return `${groupId}~${tabTitle.owner.id}`;
|
|
107
|
+
}
|
|
108
|
+
createTabGroupDto(tabBar) {
|
|
109
|
+
var _a;
|
|
110
|
+
const oldDto = this.tabGroupModel.get(tabBar);
|
|
111
|
+
const groupId = (_a = oldDto === null || oldDto === void 0 ? void 0 : oldDto.groupId) !== null && _a !== void 0 ? _a : this.groupIdCounter++;
|
|
112
|
+
const tabs = tabBar.titles.map(title => this.createTabDto(title, groupId));
|
|
113
|
+
return {
|
|
114
|
+
groupId,
|
|
115
|
+
tabs,
|
|
116
|
+
isActive: false,
|
|
117
|
+
viewColumn: 1
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
attachListenersToTabBar(tabBar) {
|
|
121
|
+
if (!tabBar) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
tabBar.titles.forEach(title => {
|
|
125
|
+
this.connectToSignal(this.disposableTabBarListeners, title.changed, this.onTabTitleChanged);
|
|
126
|
+
});
|
|
127
|
+
this.connectToSignal(this.disposableTabBarListeners, tabBar.tabMoved, this.onTabMoved);
|
|
128
|
+
this.connectToSignal(this.disposableTabBarListeners, tabBar.disposed, this.onTabGroupClosed);
|
|
129
|
+
}
|
|
130
|
+
evaluateTabDtoInput(widget) {
|
|
131
|
+
if (widget instanceof editor_preview_widget_1.EditorPreviewWidget) {
|
|
132
|
+
if (widget.editor instanceof monaco_diff_editor_1.MonacoDiffEditor) {
|
|
133
|
+
return {
|
|
134
|
+
kind: 2 /* TextDiffInput */,
|
|
135
|
+
original: (0, hierarchy_types_converters_1.toUriComponents)(widget.editor.originalModel.uri),
|
|
136
|
+
modified: (0, hierarchy_types_converters_1.toUriComponents)(widget.editor.modifiedModel.uri)
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
return {
|
|
141
|
+
kind: 1 /* TextInput */,
|
|
142
|
+
uri: (0, hierarchy_types_converters_1.toUriComponents)(widget.editor.uri.toString())
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
// TODO notebook support when implemented
|
|
146
|
+
}
|
|
147
|
+
else if (widget instanceof browser_1.ViewContainer) {
|
|
148
|
+
return {
|
|
149
|
+
kind: 7 /* WebviewEditorInput */,
|
|
150
|
+
viewType: widget.id
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
else if (widget instanceof terminal_widget_1.TerminalWidget) {
|
|
154
|
+
return {
|
|
155
|
+
kind: 8 /* TerminalEditorInput */
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
return { kind: 0 /* UnknownInput */ };
|
|
159
|
+
}
|
|
160
|
+
connectToSignal(disposableList, signal, listener) {
|
|
161
|
+
signal.connect(listener, this);
|
|
162
|
+
disposableList.push(vscode_languageserver_protocol_1.Disposable.create(() => signal.disconnect(listener)));
|
|
163
|
+
}
|
|
164
|
+
tabDtosEqual(a, b) {
|
|
165
|
+
return a.isActive === b.isActive &&
|
|
166
|
+
a.isDirty === b.isDirty &&
|
|
167
|
+
a.isPinned === b.isPinned &&
|
|
168
|
+
a.isPreview === b.isPreview &&
|
|
169
|
+
a.id === b.id;
|
|
170
|
+
}
|
|
171
|
+
getOrRebuildModel(map, key) {
|
|
172
|
+
// something broke so we rebuild the model
|
|
173
|
+
let item = map.get(key);
|
|
174
|
+
if (!item) {
|
|
175
|
+
this.createTabsModel();
|
|
176
|
+
item = map.get(key);
|
|
177
|
+
}
|
|
178
|
+
return item;
|
|
179
|
+
}
|
|
180
|
+
// #region event listeners
|
|
181
|
+
onTabCreated(tabBar, args) {
|
|
182
|
+
const group = this.getOrRebuildModel(this.tabGroupModel, tabBar);
|
|
183
|
+
this.connectToSignal(this.disposableTabBarListeners, args.title.changed, this.onTabTitleChanged);
|
|
184
|
+
const tabDto = this.createTabDto(args.title, group.groupId);
|
|
185
|
+
this.tabInfoLookup.set(args.title, { group, tab: tabDto, tabIndex: args.index });
|
|
186
|
+
group.tabs.splice(args.index, 0, tabDto);
|
|
187
|
+
this.proxy.$acceptTabOperation({
|
|
188
|
+
kind: 0 /* TAB_OPEN */,
|
|
189
|
+
index: args.index,
|
|
190
|
+
tabDto,
|
|
191
|
+
groupId: group.groupId
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
onTabTitleChanged(title) {
|
|
195
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, title);
|
|
196
|
+
if (!tabInfo) {
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
const oldTabDto = tabInfo.tab;
|
|
200
|
+
const newTabDto = this.createTabDto(title, tabInfo.group.groupId);
|
|
201
|
+
if (newTabDto.isActive && !tabInfo.group.isActive) {
|
|
202
|
+
tabInfo.group.isActive = true;
|
|
203
|
+
this.currentActiveGroup.isActive = false;
|
|
204
|
+
this.currentActiveGroup = tabInfo.group;
|
|
205
|
+
this.proxy.$acceptTabGroupUpdate(tabInfo.group);
|
|
206
|
+
}
|
|
207
|
+
if (!this.tabDtosEqual(oldTabDto, newTabDto)) {
|
|
208
|
+
tabInfo.group.tabs[tabInfo.tabIndex] = newTabDto;
|
|
209
|
+
tabInfo.tab = newTabDto;
|
|
210
|
+
this.proxy.$acceptTabOperation({
|
|
211
|
+
kind: 2 /* TAB_UPDATE */,
|
|
212
|
+
index: tabInfo.tabIndex,
|
|
213
|
+
tabDto: newTabDto,
|
|
214
|
+
groupId: tabInfo.group.groupId
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
onTabClosed(tabInfo, title) {
|
|
219
|
+
tabInfo.group.tabs.splice(tabInfo.tabIndex, 1);
|
|
220
|
+
this.tabInfoLookup.delete(title);
|
|
221
|
+
this.proxy.$acceptTabOperation({
|
|
222
|
+
kind: 1 /* TAB_CLOSE */,
|
|
223
|
+
index: tabInfo.tabIndex,
|
|
224
|
+
tabDto: this.createTabDto(title, tabInfo.group.groupId),
|
|
225
|
+
groupId: tabInfo.group.groupId
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
onTabMoved(tabBar, args) {
|
|
229
|
+
const tabInfo = this.getOrRebuildModel(this.tabInfoLookup, args.title);
|
|
230
|
+
tabInfo.tabIndex = args.toIndex;
|
|
231
|
+
const tabDto = this.createTabDto(args.title, tabInfo.group.groupId);
|
|
232
|
+
tabInfo.group.tabs.splice(args.fromIndex, 1);
|
|
233
|
+
tabInfo.group.tabs.splice(args.toIndex, 0, tabDto);
|
|
234
|
+
this.proxy.$acceptTabOperation({
|
|
235
|
+
kind: 3 /* TAB_MOVE */,
|
|
236
|
+
index: args.toIndex,
|
|
237
|
+
tabDto,
|
|
238
|
+
groupId: tabInfo.group.groupId,
|
|
239
|
+
oldIndex: args.fromIndex
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
onTabGroupCreated(tabBar) {
|
|
243
|
+
this.tabGroupChanged = true;
|
|
244
|
+
}
|
|
245
|
+
onTabGroupClosed(tabBar) {
|
|
246
|
+
this.tabGroupChanged = true;
|
|
247
|
+
}
|
|
248
|
+
// #endregion
|
|
21
249
|
// #region Messages received from Ext Host
|
|
22
250
|
$moveTab(tabId, index, viewColumn, preserveFocus) {
|
|
23
251
|
return;
|
|
24
252
|
}
|
|
25
253
|
async $closeTab(tabIds, preserveFocus) {
|
|
26
|
-
|
|
254
|
+
const widgets = [];
|
|
255
|
+
for (const tabId of tabIds) {
|
|
256
|
+
const cleanedId = tabId.substring(tabId.indexOf('~') + 1);
|
|
257
|
+
const widget = this.applicationShell.getWidgetById(cleanedId);
|
|
258
|
+
if (widget) {
|
|
259
|
+
widgets.push(widget);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
await this.applicationShell.closeMany(widgets);
|
|
263
|
+
return true;
|
|
27
264
|
}
|
|
28
265
|
async $closeGroup(groupIds, preserveFocus) {
|
|
29
|
-
|
|
266
|
+
for (const groupId of groupIds) {
|
|
267
|
+
tabGroupModel: for (const [bar, groupDto] of this.tabGroupModel) {
|
|
268
|
+
if (groupDto.groupId === groupId) {
|
|
269
|
+
this.applicationShell.closeTabs(bar);
|
|
270
|
+
break tabGroupModel;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
return true;
|
|
275
|
+
}
|
|
276
|
+
// #endregion
|
|
277
|
+
dispose() {
|
|
278
|
+
this.toDisposeOnDestroy.dispose();
|
|
279
|
+
this.disposableTabBarListeners.dispose();
|
|
30
280
|
}
|
|
31
281
|
}
|
|
32
|
-
exports.
|
|
282
|
+
exports.TabsMainImpl = TabsMainImpl;
|
|
33
283
|
//# sourceMappingURL=tabs-main.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-main.js","sourceRoot":"","sources":["../../../../src/main/browser/tabs/tabs-main.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAOhF,MAAa,WAAW;IAEpB,YACI,GAAgB,EAChB,SAA+B,IAChC,CAAC;IAEJ,0CAA0C;IAC1C,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,UAAkB,EAAE,aAAuB;QAC9E,OAAO;IACX,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAgB,EAAE,aAAuB;QACrD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAkB,EAAE,aAAuB;QACzD,OAAO,KAAK,CAAC;IACjB,CAAC;CAEJ;AApBD,kCAoBC"}
|
|
1
|
+
{"version":3,"file":"tabs-main.js","sourceRoot":"","sources":["../../../../src/main/browser/tabs/tabs-main.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TextEditorsMain, TextEditorConfigurationUpdate, Selection, TextEditorRevealType, SingleEditOperation, ApplyEditsOptions, UndoStopOptions, DecorationRenderOptions, ThemeDecorationInstanceRenderOptions, DecorationOptions, WorkspaceEditDto, DocumentsMain } from '../../common/plugin-api-rpc';
|
|
1
|
+
import { TextEditorsMain, TextEditorConfigurationUpdate, Selection, TextEditorRevealType, SingleEditOperation, ApplyEditsOptions, UndoStopOptions, DecorationRenderOptions, ThemeDecorationInstanceRenderOptions, DecorationOptions, WorkspaceEditDto, DocumentsMain, WorkspaceEditMetadataDto } from '../../common/plugin-api-rpc';
|
|
2
2
|
import { Range, TextDocumentShowOptions } from '../../common/plugin-api-rpc-model';
|
|
3
3
|
import { EditorsAndDocumentsMain } from './editors-and-documents-main';
|
|
4
4
|
import { RPCProtocol } from '../../common/rpc-protocol';
|
|
@@ -25,7 +25,7 @@ export declare class TextEditorsMainImpl implements TextEditorsMain, Disposable
|
|
|
25
25
|
$trySetSelections(id: string, selections: Selection[]): Promise<void>;
|
|
26
26
|
$tryRevealRange(id: string, range: Range, revealType: TextEditorRevealType): Promise<void>;
|
|
27
27
|
$tryApplyEdits(id: string, modelVersionId: number, edits: SingleEditOperation[], opts: ApplyEditsOptions): Promise<boolean>;
|
|
28
|
-
$tryApplyWorkspaceEdit(dto: WorkspaceEditDto): Promise<boolean>;
|
|
28
|
+
$tryApplyWorkspaceEdit(dto: WorkspaceEditDto, metadata?: WorkspaceEditMetadataDto): Promise<boolean>;
|
|
29
29
|
$tryInsertSnippet(id: string, template: string, ranges: Range[], opts: UndoStopOptions): Promise<boolean>;
|
|
30
30
|
$registerTextEditorDecorationType(key: string, options: DecorationRenderOptions | IDecorationRenderOptions): void;
|
|
31
31
|
protected injectRemoteUris(options: DecorationRenderOptions | ThemeDecorationInstanceRenderOptions): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-editors-main.d.ts","sourceRoot":"","sources":["../../../src/main/browser/text-editors-main.ts"],"names":[],"mappings":"AAiBA,OAAO,EACH,eAAe,EAGf,6BAA6B,EAC7B,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,oCAAoC,EACpC,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"text-editors-main.d.ts","sourceRoot":"","sources":["../../../src/main/browser/text-editors-main.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,11 +86,11 @@ class TextEditorsMainImpl {
|
|
|
86
86
|
}
|
|
87
87
|
return Promise.resolve(this.editorsAndDocuments.getEditor(id).applyEdits(modelVersionId, edits, opts));
|
|
88
88
|
}
|
|
89
|
-
async $tryApplyWorkspaceEdit(dto) {
|
|
89
|
+
async $tryApplyWorkspaceEdit(dto, metadata) {
|
|
90
90
|
const workspaceEdit = (0, languages_main_1.toMonacoWorkspaceEdit)(dto);
|
|
91
91
|
try {
|
|
92
92
|
const edits = bulkEditService_1.ResourceEdit.convert(workspaceEdit);
|
|
93
|
-
const { success } = await this.bulkEditService.apply(edits);
|
|
93
|
+
const { success } = await this.bulkEditService.apply(edits, { respectAutoSaveConfig: metadata === null || metadata === void 0 ? void 0 : metadata.isRefactoring });
|
|
94
94
|
return success;
|
|
95
95
|
}
|
|
96
96
|
catch (_a) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-editors-main.js","sourceRoot":"","sources":["../../../src/main/browser/text-editors-main.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAEhF,8DAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"text-editors-main.js","sourceRoot":"","sources":["../../../src/main/browser/text-editors-main.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ContextKey, ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
2
|
+
import { ApplicationShell, FocusTracker, Widget } from '@theia/core/lib/browser';
|
|
3
|
+
export declare class WebviewContextKeys {
|
|
4
|
+
/**
|
|
5
|
+
* Context key representing the `viewType` of the active `WebviewWidget`, if any.
|
|
6
|
+
*/
|
|
7
|
+
activeWebviewPanelId: ContextKey<string>;
|
|
8
|
+
protected applicationShell: ApplicationShell;
|
|
9
|
+
protected contextKeyService: ContextKeyService;
|
|
10
|
+
protected postConstruct(): void;
|
|
11
|
+
protected handleDidChangeCurrentWidget(change: FocusTracker.IChangedArgs<Widget>): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=webview-context-keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webview-context-keys.d.ts","sourceRoot":"","sources":["../../../../src/main/browser/webview/webview-context-keys.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGjF,qBACa,kBAAkB;IAE3B;;OAEG;IACH,oBAAoB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAGzC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,aAAa,IAAI,IAAI;IAK/B,SAAS,CAAC,4BAA4B,CAAC,MAAM,EAAE,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,IAAI;CAO1F"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2023 Ericsson and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
+
};
|
|
23
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
24
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.WebviewContextKeys = void 0;
|
|
28
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
29
|
+
const context_key_service_1 = require("@theia/core/lib/browser/context-key-service");
|
|
30
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
31
|
+
const webview_1 = require("./webview");
|
|
32
|
+
let WebviewContextKeys = class WebviewContextKeys {
|
|
33
|
+
postConstruct() {
|
|
34
|
+
this.activeWebviewPanelId = this.contextKeyService.createKey('activeWebviewPanelId', '');
|
|
35
|
+
this.applicationShell.onDidChangeCurrentWidget(this.handleDidChangeCurrentWidget, this);
|
|
36
|
+
}
|
|
37
|
+
handleDidChangeCurrentWidget(change) {
|
|
38
|
+
if (change.newValue instanceof webview_1.WebviewWidget) {
|
|
39
|
+
this.activeWebviewPanelId.set(change.newValue.viewType);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.activeWebviewPanelId.set('');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, inversify_1.inject)(browser_1.ApplicationShell),
|
|
48
|
+
__metadata("design:type", browser_1.ApplicationShell)
|
|
49
|
+
], WebviewContextKeys.prototype, "applicationShell", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, inversify_1.inject)(context_key_service_1.ContextKeyService),
|
|
52
|
+
__metadata("design:type", Object)
|
|
53
|
+
], WebviewContextKeys.prototype, "contextKeyService", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, inversify_1.postConstruct)(),
|
|
56
|
+
__metadata("design:type", Function),
|
|
57
|
+
__metadata("design:paramtypes", []),
|
|
58
|
+
__metadata("design:returntype", void 0)
|
|
59
|
+
], WebviewContextKeys.prototype, "postConstruct", null);
|
|
60
|
+
WebviewContextKeys = __decorate([
|
|
61
|
+
(0, inversify_1.injectable)()
|
|
62
|
+
], WebviewContextKeys);
|
|
63
|
+
exports.WebviewContextKeys = WebviewContextKeys;
|
|
64
|
+
//# sourceMappingURL=webview-context-keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webview-context-keys.js","sourceRoot":"","sources":["../../../../src/main/browser/webview/webview-context-keys.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;AAEhF,4DAAiF;AACjF,qFAA4F;AAC5F,qDAAiF;AACjF,uCAA0C;AAG1C,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAcjB,aAAa;QACnB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,IAAI,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;IAC5F,CAAC;IAES,4BAA4B,CAAC,MAAyC;QAC5E,IAAI,MAAM,CAAC,QAAQ,YAAY,uBAAa,EAAE;YAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAC3D;aAAM;YACH,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACrC;IACL,CAAC;CACJ,CAAA;AAlBG;IADC,IAAA,kBAAM,EAAC,0BAAgB,CAAC;8BACG,0BAAgB;4DAAC;AAG7C;IADC,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;6DACqB;AAG/C;IADC,IAAA,yBAAa,GAAE;;;;uDAIf;AAjBQ,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;GACA,kBAAkB,CA0B9B;AA1BY,gDAAkB"}
|
package/lib/plugin/dialogs.js
CHANGED
|
@@ -27,8 +27,8 @@ class DialogsExtImpl {
|
|
|
27
27
|
title: options.title,
|
|
28
28
|
openLabel: options.openLabel,
|
|
29
29
|
defaultUri: options.defaultUri ? options.defaultUri.path : undefined,
|
|
30
|
-
canSelectFiles: options.canSelectFiles ? options.canSelectFiles : true,
|
|
31
|
-
canSelectFolders: options.canSelectFolders ? options.canSelectFolders : false,
|
|
30
|
+
canSelectFiles: typeof options.canSelectFiles === 'boolean' ? options.canSelectFiles : true,
|
|
31
|
+
canSelectFolders: typeof options.canSelectFolders === 'boolean' ? options.canSelectFolders : false,
|
|
32
32
|
canSelectMany: options.canSelectMany,
|
|
33
33
|
filters: options.filters
|
|
34
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialogs.js","sourceRoot":"","sources":["../../src/plugin/dialogs.ts"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAChF,6DAAyJ;AAGzJ,6CAAmC;AAEnC,MAAa,cAAc;IAGvB,YAAY,GAAgB;QACxB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,mCAAG,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC;IAED,cAAc,CAAC,OAA0B;QACrC,MAAM,WAAW,GAAG;YAChB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACpE,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"dialogs.js","sourceRoot":"","sources":["../../src/plugin/dialogs.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,22 +8,28 @@ import { RPCProtocol } from '../common/rpc-protocol';
|
|
|
8
8
|
import { FileSystemExt } from '../common/plugin-api-rpc';
|
|
9
9
|
import * as vscode from '@theia/plugin';
|
|
10
10
|
import * as files from '@theia/filesystem/lib/common/files';
|
|
11
|
-
import { LanguagesExtImpl } from './languages';
|
|
12
11
|
import { BinaryBuffer } from '@theia/core/lib/common/buffer';
|
|
12
|
+
export declare class FsLinkProvider {
|
|
13
|
+
private _schemes;
|
|
14
|
+
private _stateMachine?;
|
|
15
|
+
add(scheme: string): void;
|
|
16
|
+
delete(scheme: string): void;
|
|
17
|
+
private _initStateMachine;
|
|
18
|
+
provideDocumentLinks(document: vscode.TextDocument): vscode.ProviderResult<vscode.DocumentLink[]>;
|
|
19
|
+
}
|
|
13
20
|
export declare class FileSystemExtImpl implements FileSystemExt {
|
|
14
|
-
private _extHostLanguageFeatures;
|
|
15
21
|
private readonly _proxy;
|
|
16
22
|
private readonly _linkProvider;
|
|
17
23
|
private readonly _fsProvider;
|
|
18
24
|
private readonly _capabilities;
|
|
19
25
|
private readonly _usedSchemes;
|
|
20
26
|
private readonly _watches;
|
|
21
|
-
private
|
|
27
|
+
private readonly onWillRegisterFileSystemProviderEmitter;
|
|
28
|
+
readonly onWillRegisterFileSystemProvider: import("vscode-jsonrpc/lib/common/events").Event<FsLinkProvider>;
|
|
22
29
|
private _handlePool;
|
|
23
30
|
readonly fileSystem: vscode.FileSystem;
|
|
24
|
-
constructor(rpc: RPCProtocol
|
|
31
|
+
constructor(rpc: RPCProtocol);
|
|
25
32
|
dispose(): void;
|
|
26
|
-
private _registerLinkProviderIfNotYetRegistered;
|
|
27
33
|
registerFileSystemProvider(scheme: string, provider: vscode.FileSystemProvider, options?: {
|
|
28
34
|
isCaseSensitive?: boolean;
|
|
29
35
|
isReadonly?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-system-ext-impl.d.ts","sourceRoot":"","sources":["../../src/plugin/file-system-ext-impl.ts"],"names":[],"mappings":"AAmBA;;;;GAIG;AAOH,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAsB,aAAa,EAAkC,MAAM,0BAA0B,CAAC;AAC7G,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"file-system-ext-impl.d.ts","sourceRoot":"","sources":["../../src/plugin/file-system-ext-impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* One should be able to diff them to see differences.
|
|
25
25
|
*/
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.FileSystemExtImpl = void 0;
|
|
27
|
+
exports.FileSystemExtImpl = exports.FsLinkProvider = void 0;
|
|
28
28
|
const types_impl_1 = require("./types-impl");
|
|
29
29
|
const plugin_api_rpc_1 = require("../common/plugin-api-rpc");
|
|
30
30
|
const files = require("@theia/filesystem/lib/common/files");
|
|
@@ -33,6 +33,7 @@ const uri_components_1 = require("../common/uri-components");
|
|
|
33
33
|
const link_computer_1 = require("../common/link-computer");
|
|
34
34
|
const strings_1 = require("@theia/core/lib/common/strings");
|
|
35
35
|
const buffer_1 = require("@theia/core/lib/common/buffer");
|
|
36
|
+
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
36
37
|
class FsLinkProvider {
|
|
37
38
|
constructor() {
|
|
38
39
|
this._schemes = [];
|
|
@@ -113,6 +114,7 @@ class FsLinkProvider {
|
|
|
113
114
|
return result;
|
|
114
115
|
}
|
|
115
116
|
}
|
|
117
|
+
exports.FsLinkProvider = FsLinkProvider;
|
|
116
118
|
class ConsumerFileSystem {
|
|
117
119
|
constructor(_proxy, _capabilities) {
|
|
118
120
|
this._proxy = _proxy;
|
|
@@ -171,13 +173,14 @@ class ConsumerFileSystem {
|
|
|
171
173
|
}
|
|
172
174
|
}
|
|
173
175
|
class FileSystemExtImpl {
|
|
174
|
-
constructor(rpc
|
|
175
|
-
this._extHostLanguageFeatures = _extHostLanguageFeatures;
|
|
176
|
+
constructor(rpc) {
|
|
176
177
|
this._linkProvider = new FsLinkProvider();
|
|
177
178
|
this._fsProvider = new Map();
|
|
178
179
|
this._capabilities = new Map();
|
|
179
180
|
this._usedSchemes = new Set();
|
|
180
181
|
this._watches = new Map();
|
|
182
|
+
this.onWillRegisterFileSystemProviderEmitter = new vscode_languageserver_protocol_1.Emitter();
|
|
183
|
+
this.onWillRegisterFileSystemProvider = this.onWillRegisterFileSystemProviderEmitter.event;
|
|
181
184
|
this._handlePool = 0;
|
|
182
185
|
this._proxy = rpc.getProxy(plugin_api_rpc_1.PLUGIN_RPC_CONTEXT.FILE_SYSTEM_MAIN);
|
|
183
186
|
this.fileSystem = new ConsumerFileSystem(this._proxy, this._capabilities);
|
|
@@ -185,24 +188,13 @@ class FileSystemExtImpl {
|
|
|
185
188
|
Object.keys(uri_components_1.Schemes).forEach(scheme => this._usedSchemes.add(scheme));
|
|
186
189
|
}
|
|
187
190
|
dispose() {
|
|
188
|
-
|
|
189
|
-
this._linkProviderRegistration.dispose();
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
_registerLinkProviderIfNotYetRegistered() {
|
|
193
|
-
if (!this._linkProviderRegistration) {
|
|
194
|
-
this._linkProviderRegistration = this._extHostLanguageFeatures.registerDocumentLinkProvider('*', this._linkProvider, {
|
|
195
|
-
id: 'theia.fs-ext-impl',
|
|
196
|
-
name: 'fs-ext-impl'
|
|
197
|
-
});
|
|
198
|
-
}
|
|
191
|
+
this.onWillRegisterFileSystemProviderEmitter.dispose();
|
|
199
192
|
}
|
|
200
193
|
registerFileSystemProvider(scheme, provider, options = {}) {
|
|
201
194
|
if (this._usedSchemes.has(scheme)) {
|
|
202
195
|
throw new Error(`a provider for the scheme '${scheme}' is already registered`);
|
|
203
196
|
}
|
|
204
|
-
|
|
205
|
-
this._registerLinkProviderIfNotYetRegistered();
|
|
197
|
+
this.onWillRegisterFileSystemProviderEmitter.fire(this._linkProvider);
|
|
206
198
|
const handle = this._handlePool++;
|
|
207
199
|
this._linkProvider.add(scheme);
|
|
208
200
|
this._usedSchemes.add(scheme);
|