workbench.main.ts 12.0 KB
Newer Older
A
Alex Dima 已提交
1 2 3 4 5
/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

6
//#region --- workbench/editor core
A
Alex Dima 已提交
7

8
import 'vs/editor/editor.all';
A
Alex Dima 已提交
9

10
import 'vs/workbench/api/electron-browser/extensionHost.contribution';
S
#50583  
Sandeep Somavarapu 已提交
11

B
Benjamin Pasero 已提交
12
import 'vs/workbench/electron-browser/main.contribution';
13
import 'vs/workbench/browser/workbench.contribution';
J
Johannes Rieken 已提交
14

15
import 'vs/workbench/electron-browser/main';
S
Sandeep Somavarapu 已提交
16

17 18 19 20
//#endregion


//#region --- workbench actions
21

B
Benjamin Pasero 已提交
22
import 'vs/workbench/browser/actions/layoutActions';
23
import 'vs/workbench/browser/actions/listCommands';
24
import 'vs/workbench/browser/actions/navigationActions';
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
import 'vs/workbench/browser/parts/quickopen/quickopenActions';
import 'vs/workbench/browser/parts/quickinput/quickInputActions';

//#endregion


//#region --- API Extension Points

import 'vs/workbench/api/common/menusExtensionPoint';
import 'vs/workbench/api/common/configurationExtensionPoint';
import 'vs/workbench/api/browser/viewsExtensionPoint';

//#endregion


//#region --- workbench services
41 42 43 44 45 46 47 48 49 50 51 52 53 54
import { registerSingleton } from 'vs/platform/instantiation/common/extensions';
import { IMenuService } from 'vs/platform/actions/common/actions';
import { MenuService } from 'vs/platform/actions/common/menuService';
import { IListService, ListService } from 'vs/platform/list/browser/listService';
import { OpenerService } from 'vs/editor/browser/services/openerService';
import { IOpenerService } from 'vs/platform/opener/common/opener';
import { IEditorWorkerService } from 'vs/editor/common/services/editorWorkerService';
import { EditorWorkerServiceImpl } from 'vs/editor/common/services/editorWorkerServiceImpl';
import { MarkerDecorationsService } from 'vs/editor/common/services/markerDecorationsServiceImpl';
import { IMarkerDecorationsService } from 'vs/editor/common/services/markersDecorationService';
import { IMarkerService } from 'vs/platform/markers/common/markers';
import { MarkerService } from 'vs/platform/markers/common/markerService';
import { IDownloadService } from 'vs/platform/download/common/download';
import { DownloadService } from 'vs/platform/download/node/downloadService';
B
Benjamin Pasero 已提交
55 56
import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService';
import { ClipboardService } from 'vs/platform/clipboard/electron-browser/clipboardService';
57 58 59 60 61 62 63 64
import { ContextKeyService } from 'vs/platform/contextkey/browser/contextKeyService';
import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey';
import { IModelService } from 'vs/editor/common/services/modelService';
import { ModelServiceImpl } from 'vs/editor/common/services/modelServiceImpl';
import { ITextResourceConfigurationService } from 'vs/editor/common/services/resourceConfiguration';
import { TextResourceConfigurationService } from 'vs/editor/common/services/resourceConfigurationImpl';
import { IAccessibilityService } from 'vs/platform/accessibility/common/accessibility';
import { AccessibilityService } from 'vs/platform/accessibility/node/accessibilityService';
65 66
import { IExtensionEnablementService } from 'vs/platform/extensionManagement/common/extensionManagement';
import { ExtensionEnablementService } from 'vs/platform/extensionManagement/common/extensionEnablementService';
67

68
import 'vs/workbench/services/bulkEdit/browser/bulkEditService';
69
import 'vs/workbench/services/integrity/node/integrityService';
70
import 'vs/workbench/services/keybinding/common/keybindingEditing';
71
import 'vs/workbench/services/hash/node/hashService';
72
import 'vs/workbench/services/textMate/electron-browser/textMateService';
73 74 75 76 77 78 79 80
import 'vs/workbench/services/configurationResolver/browser/configurationResolverService';
import 'vs/workbench/services/workspace/node/workspaceEditingService';
import 'vs/workbench/services/extensions/electron-browser/inactiveExtensionUrlHandler';
import 'vs/workbench/services/decorations/browser/decorationsService';
import 'vs/workbench/services/search/node/searchService';
import 'vs/workbench/services/progress/browser/progressService2';
import 'vs/workbench/services/editor/browser/codeEditorService';
import 'vs/workbench/services/broadcast/electron-browser/broadcastService';
81
import 'vs/workbench/services/preferences/browser/preferencesService';
S
Sandeep Somavarapu 已提交
82
import 'vs/workbench/services/output/node/outputChannelModelService';
83 84 85 86
import 'vs/workbench/services/configuration/node/jsonEditingService';
import 'vs/workbench/services/textmodelResolver/common/textModelResolverService';
import 'vs/workbench/services/textfile/common/textFileService';
import 'vs/workbench/services/dialogs/electron-browser/dialogService';
B
Benjamin Pasero 已提交
87
import 'vs/workbench/services/backup/node/backupFileService';
88
import 'vs/workbench/services/editor/browser/editorService';
89
import 'vs/workbench/services/history/browser/history';
90
import 'vs/workbench/services/files/node/remoteFileService';
91
import 'vs/workbench/services/activity/browser/activityService';
92
import 'vs/workbench/browser/parts/views/views';
93
import 'vs/workbench/services/keybinding/electron-browser/keybindingService';
94 95 96 97 98
import 'vs/workbench/services/untitled/common/untitledEditorService';
import 'vs/workbench/services/textfile/node/textResourcePropertiesService';
import 'vs/workbench/services/mode/common/workbenchModeService';
import 'vs/workbench/services/commands/common/commandService';
import 'vs/workbench/services/themes/browser/workbenchThemeService';
99
import 'vs/workbench/services/extensions/electron-browser/extensionService';
100
import 'vs/workbench/services/contextmenu/electron-browser/contextmenuService';
101
import 'vs/platform/contextview/browser/contextViewService';
102 103 104 105 106 107 108 109 110

registerSingleton(IMenuService, MenuService, true);
registerSingleton(IListService, ListService, true);
registerSingleton(IOpenerService, OpenerService, true);
registerSingleton(IEditorWorkerService, EditorWorkerServiceImpl);
registerSingleton(IMarkerDecorationsService, MarkerDecorationsService);
registerSingleton(IMarkerService, MarkerService, true);
registerSingleton(IDownloadService, DownloadService, true);
registerSingleton(IClipboardService, ClipboardService, true);
111 112 113 114
registerSingleton(IContextKeyService, ContextKeyService);
registerSingleton(IModelService, ModelServiceImpl, true);
registerSingleton(ITextResourceConfigurationService, TextResourceConfigurationService);
registerSingleton(IAccessibilityService, AccessibilityService, true);
115
registerSingleton(IExtensionEnablementService, ExtensionEnablementService, true);
116 117 118

//#endregion

119 120 121 122 123 124 125 126 127 128 129 130
//#region --- workbench parts

import 'vs/workbench/browser/parts/quickinput/quickInput';
import 'vs/workbench/browser/parts/quickopen/quickOpenController';
import 'vs/workbench/browser/parts/titlebar/titlebarPart';
import 'vs/workbench/browser/parts/editor/editorPart';
import 'vs/workbench/browser/parts/activitybar/activitybarPart';
import 'vs/workbench/browser/parts/panel/panelPart';
import 'vs/workbench/browser/parts/sidebar/sidebarPart';
import 'vs/workbench/browser/parts/statusbar/statusbarPart';

//#endregion
131

132
//#region --- workbench contributions
133

134 135 136
// Telemetry
import 'vs/workbench/contrib/telemetry/browser/telemetry.contribution';

137
// Localizations
138
import 'vs/workbench/contrib/localizations/browser/localizations.contribution';
139 140

// Preferences
141 142
import 'vs/workbench/contrib/preferences/electron-browser/preferences.contribution';
import 'vs/workbench/contrib/preferences/browser/keybindingsEditorContribution';
143 144

// Logs
145
import 'vs/workbench/contrib/logs/common/logs.contribution';
A
Alex Dima 已提交
146

147
// Quick Open Handlers
148
import 'vs/workbench/contrib/quickopen/browser/quickopen.contribution';
A
Alex Dima 已提交
149

150
// Explorer
151 152 153
import 'vs/workbench/contrib/files/browser/explorerViewlet';
import 'vs/workbench/contrib/files/browser/fileActions.contribution';
import 'vs/workbench/contrib/files/browser/files.contribution';
A
Alex Dima 已提交
154

155
// Backup
156
import 'vs/workbench/contrib/backup/common/backup.contribution';
157

158
// Stats
159
import 'vs/workbench/contrib/stats/node/stats.contribution';
160

161
// Rapid Render Splash
162
import 'vs/workbench/contrib/splash/electron-browser/partsSplash.contribution';
163

164
// Search
165
import 'vs/workbench/contrib/search/browser/search.contribution';
166 167
import 'vs/workbench/contrib/search/browser/searchView';
import 'vs/workbench/contrib/search/browser/openAnythingHandler';
A
Alex Dima 已提交
168

169
// SCM
J
Joao Moreno 已提交
170 171
import 'vs/workbench/contrib/scm/browser/scm.contribution';
import 'vs/workbench/contrib/scm/browser/scmViewlet';
A
Alex Dima 已提交
172

173
// Debug
174 175 176 177
import 'vs/workbench/contrib/debug/electron-browser/debug.contribution';
import 'vs/workbench/contrib/debug/browser/debugQuickOpen';
import 'vs/workbench/contrib/debug/electron-browser/repl';
import 'vs/workbench/contrib/debug/browser/debugViewlet';
A
Alex Dima 已提交
178

179
// Markers
S
Sandeep Somavarapu 已提交
180
import 'vs/workbench/contrib/markers/browser/markers.contribution';
181 182

// Comments
183
import 'vs/workbench/contrib/comments/electron-browser/comments.contribution';
A
Alex Dima 已提交
184

185
// URL Support
186
import 'vs/workbench/contrib/url/common/url.contribution';
187

188
// Webview
189
import 'vs/workbench/contrib/webview/electron-browser/webview.contribution';
C
Christof Marti 已提交
190

191
// Extensions Management
192 193 194
import 'vs/workbench/contrib/extensions/electron-browser/extensions.contribution';
import 'vs/workbench/contrib/extensions/browser/extensionsQuickOpen';
import 'vs/workbench/contrib/extensions/electron-browser/extensionsViewlet';
195

196
// Output Panel
S
Sandeep Somavarapu 已提交
197
import 'vs/workbench/contrib/output/browser/output.contribution';
198
import 'vs/workbench/contrib/output/browser/outputPanel';
A
Alex Dima 已提交
199

200
// Terminal
201
import 'vs/workbench/contrib/terminal/browser/terminal.contribution';
202 203
import 'vs/workbench/contrib/terminal/electron-browser/terminal.contribution';
import 'vs/workbench/contrib/terminal/browser/terminalQuickOpen';
204
import 'vs/workbench/contrib/terminal/browser/terminalPanel';
A
Alex Dima 已提交
205

206
// Relauncher
207
import 'vs/workbench/contrib/relauncher/electron-browser/relauncher.contribution';
208

209
// Tasks
210
import 'vs/workbench/contrib/tasks/electron-browser/task.contribution';
A
Alex Dima 已提交
211

212
// Emmet
213 214
import 'vs/workbench/contrib/emmet/browser/emmet.browser.contribution';
import 'vs/workbench/contrib/emmet/electron-browser/emmet.contribution';
A
Alex Dima 已提交
215

216
// CodeEditor Contributions
B
Benjamin Pasero 已提交
217
import 'vs/workbench/contrib/codeEditor/browser/codeEditor.contribution';
218
import 'vs/workbench/contrib/codeEditor/electron-browser/codeEditor.contribution';
I
isidor 已提交
219

220
// Execution
221
import 'vs/workbench/contrib/externalTerminal/electron-browser/externalTerminal.contribution';
A
Alex Dima 已提交
222

223
// Snippets
224 225 226 227 228
import 'vs/workbench/contrib/snippets/browser/snippets.contribution';
import 'vs/workbench/contrib/snippets/browser/snippetsService';
import 'vs/workbench/contrib/snippets/browser/insertSnippet';
import 'vs/workbench/contrib/snippets/browser/configureSnippets';
import 'vs/workbench/contrib/snippets/browser/tabCompletion';
A
Alex Dima 已提交
229

230 231 232
// Formatter Help
import 'vs/workbench/contrib/format/browser/format.contribution';

233
// Send a Smile
234
import 'vs/workbench/contrib/feedback/electron-browser/feedback.contribution';
A
Alex Dima 已提交
235

236
// Update
237
import 'vs/workbench/contrib/update/electron-browser/update.contribution';
A
Alex Dima 已提交
238

239
// Surveys
240 241
import 'vs/workbench/contrib/surveys/electron-browser/nps.contribution';
import 'vs/workbench/contrib/surveys/electron-browser/languageSurveys.contribution';
242

243
// Performance
244
import 'vs/workbench/contrib/performance/electron-browser/performance.contribution';
245

246
// CLI
247
import 'vs/workbench/contrib/cli/node/cli.contribution';
A
Alex Dima 已提交
248

249
// Themes Support
250
import 'vs/workbench/contrib/themes/browser/themes.contribution';
251
import 'vs/workbench/contrib/themes/test/electron-browser/themes.test.contribution';
252

253
// Watermark
254
import 'vs/workbench/contrib/watermark/browser/watermark';
C
Christof Marti 已提交
255

256
// Welcome
257
import 'vs/workbench/contrib/welcome/walkThrough/browser/walkThrough.contribution';
258 259
import 'vs/workbench/contrib/welcome/gettingStarted/electron-browser/gettingStarted.contribution';
import 'vs/workbench/contrib/welcome/overlay/browser/welcomeOverlay';
260
import 'vs/workbench/contrib/welcome/page/browser/welcomePage.contribution';
261

262
// Outline
J
Johannes Rieken 已提交
263
import 'vs/workbench/contrib/outline/browser/outline.contribution';
J
Johannes Rieken 已提交
264

265
// Experiments
266
import 'vs/workbench/contrib/experiments/electron-browser/experiments.contribution';
267

R
Rob DeLine 已提交
268
// Code Insets
269
import 'vs/workbench/contrib/codeinset/electron-browser/codeInset.contribution';
R
Rob DeLine 已提交
270

271 272 273
// Issues
import 'vs/workbench/contrib/issue/electron-browser/issue.contribution';

J
Johannes Rieken 已提交
274
//#endregion