Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
a731d2e2
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a731d2e2
编写于
3月 04, 2019
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
debt - move more services to use registerSingleton()
上级
fea4aae0
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
23 addition
and
31 deletion
+23
-31
src/vs/workbench/electron-browser/workbench.ts
src/vs/workbench/electron-browser/workbench.ts
+1
-30
src/vs/workbench/services/configuration/node/jsonEditingService.ts
...rkbench/services/configuration/node/jsonEditingService.ts
+3
-0
src/vs/workbench/services/dialogs/electron-browser/dialogService.ts
...kbench/services/dialogs/electron-browser/dialogService.ts
+5
-1
src/vs/workbench/services/preferences/browser/preferencesService.ts
...kbench/services/preferences/browser/preferencesService.ts
+3
-0
src/vs/workbench/services/textfile/common/textFileService.ts
src/vs/workbench/services/textfile/common/textFileService.ts
+3
-0
src/vs/workbench/services/textmodelResolver/common/textModelResolverService.ts
...ices/textmodelResolver/common/textModelResolverService.ts
+3
-0
src/vs/workbench/workbench.main.ts
src/vs/workbench/workbench.main.ts
+5
-0
未找到文件。
src/vs/workbench/electron-browser/workbench.ts
浏览文件 @
a731d2e2
...
...
@@ -38,7 +38,6 @@ import { IWorkspaceContextService, WorkbenchState } from 'vs/platform/workspace/
import
{
IStorageService
,
StorageScope
,
IWillSaveStateEvent
,
WillSaveStateReason
}
from
'
vs/platform/storage/common/storage
'
;
import
{
ContextMenuService
as
HTMLContextMenuService
}
from
'
vs/platform/contextview/browser/contextMenuService
'
;
import
{
IConfigurationService
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
IJSONEditingService
}
from
'
vs/workbench/services/configuration/common/jsonEditing
'
;
import
{
ContextKeyService
}
from
'
vs/platform/contextkey/browser/contextKeyService
'
;
import
{
IKeybindingService
}
from
'
vs/platform/keybinding/common/keybinding
'
;
import
{
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
...
...
@@ -51,10 +50,6 @@ import { IQuickOpenService } from 'vs/platform/quickOpen/common/quickOpen';
import
{
IHistoryService
}
from
'
vs/workbench/services/history/common/history
'
;
import
{
IInstantiationService
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
SyncDescriptor
}
from
'
vs/platform/instantiation/common/descriptors
'
;
import
{
TextFileService
}
from
'
vs/workbench/services/textfile/common/textFileService
'
;
import
{
ITextFileService
}
from
'
vs/workbench/services/textfile/common/textfiles
'
;
import
{
TextModelResolverService
}
from
'
vs/workbench/services/textmodelResolver/common/textModelResolverService
'
;
import
{
ITextModelService
}
from
'
vs/editor/common/services/resolverService
'
;
import
{
ServiceCollection
}
from
'
vs/platform/instantiation/common/serviceCollection
'
;
import
{
LifecyclePhase
,
StartupKind
,
ILifecycleService
,
WillShutdownEvent
}
from
'
vs/platform/lifecycle/common/lifecycle
'
;
import
{
IWindowService
,
IWindowConfiguration
,
IPath
,
MenuBarVisibility
,
getTitleBarStyle
,
IWindowsService
}
from
'
vs/platform/windows/common/windows
'
;
...
...
@@ -71,14 +66,11 @@ import { NotificationsAlerts } from 'vs/workbench/browser/parts/notifications/no
import
{
NotificationsStatus
}
from
'
vs/workbench/browser/parts/notifications/notificationsStatus
'
;
import
{
registerNotificationCommands
}
from
'
vs/workbench/browser/parts/notifications/notificationsCommands
'
;
import
{
NotificationsToasts
}
from
'
vs/workbench/browser/parts/notifications/notificationsToasts
'
;
import
{
IPreferencesService
}
from
'
vs/workbench/services/preferences/common/preferences
'
;
import
{
PreferencesService
}
from
'
vs/workbench/services/preferences/browser/preferencesService
'
;
import
{
IEditorService
,
IResourceEditor
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
IEditorGroupsService
}
from
'
vs/workbench/services/editor/common/editorGroupsService
'
;
import
{
EditorService
}
from
'
vs/workbench/services/editor/browser/editorService
'
;
import
{
ContextViewService
}
from
'
vs/platform/contextview/browser/contextViewService
'
;
import
{
IWorkbenchThemeService
}
from
'
vs/workbench/services/themes/common/workbenchThemeService
'
;
import
{
IFileDialogService
,
IDialogService
}
from
'
vs/platform/dialogs/common/dialogs
'
;
import
{
Sizing
,
Direction
,
Grid
,
View
}
from
'
vs/base/browser/ui/grid/grid
'
;
import
{
IEditor
}
from
'
vs/editor/common/editorCommon
'
;
import
{
WorkbenchLayout
}
from
'
vs/workbench/browser/layout
'
;
...
...
@@ -116,7 +108,6 @@ import { WorkbenchContextKeysHandler } from 'vs/workbench/browser/contextkeys';
// import@node
import
{
BackupFileService
,
InMemoryBackupFileService
}
from
'
vs/workbench/services/backup/node/backupFileService
'
;
import
{
WorkspaceService
}
from
'
vs/workbench/services/configuration/node/configurationService
'
;
import
{
JSONEditingService
}
from
'
vs/workbench/services/configuration/node/jsonEditingService
'
;
import
{
getDelayedChannel
}
from
'
vs/base/parts/ipc/node/ipc
'
;
import
{
connect
as
connectNet
}
from
'
vs/base/parts/ipc/node/ipc.net
'
;
import
{
DialogChannel
}
from
'
vs/platform/dialogs/node/dialogIpc
'
;
...
...
@@ -140,7 +131,6 @@ import { RemoteFileService } from 'vs/workbench/services/files/node/remoteFileSe
import
{
ContextMenuService
as
NativeContextMenuService
}
from
'
vs/workbench/services/contextmenu/electron-browser/contextmenuService
'
;
import
{
WorkbenchKeybindingService
}
from
'
vs/workbench/services/keybinding/electron-browser/keybindingService
'
;
import
{
LifecycleService
}
from
'
vs/platform/lifecycle/electron-browser/lifecycleService
'
;
import
{
DialogService
,
FileDialogService
}
from
'
vs/workbench/services/dialogs/electron-browser/dialogService
'
;
import
{
WindowService
}
from
'
vs/platform/windows/electron-browser/windowService
'
;
import
{
RemoteAuthorityResolverService
}
from
'
vs/platform/remote/electron-browser/remoteAuthorityResolverService
'
;
import
{
RemoteAgentService
}
from
'
vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl
'
;
...
...
@@ -412,13 +402,9 @@ export class Workbench extends Disposable implements IPartService {
serviceCollection
.
set
(
ITelemetryService
,
this
.
telemetryService
);
this
.
_register
(
configurationTelemetry
(
this
.
telemetryService
,
this
.
configurationService
));
// Dialogs
serviceCollection
.
set
(
IDialogService
,
new
SyncDescriptor
(
DialogService
,
undefined
,
true
));
// Lifecycle
this
.
lifecycleService
=
this
.
instantiationService
.
createInstance
(
LifecycleService
);
serviceCollection
.
set
(
ILifecycleService
,
this
.
lifecycleService
);
this
.
_register
(
this
.
lifecycleService
.
onWillShutdown
(
event
=>
this
.
_onWillShutdown
.
fire
(
event
)));
this
.
_register
(
this
.
lifecycleService
.
onShutdown
(()
=>
{
this
.
_onShutdown
.
fire
();
...
...
@@ -456,7 +442,7 @@ export class Workbench extends Disposable implements IPartService {
serviceCollection
.
set
(
IExtensionEnablementService
,
new
SyncDescriptor
(
ExtensionEnablementService
,
undefined
,
true
));
// Extensions
serviceCollection
.
set
(
IExtensionService
,
this
.
instantiationService
.
createInstance
(
ExtensionService
));
serviceCollection
.
set
(
IExtensionService
,
new
SyncDescriptor
(
ExtensionService
));
// Theming
this
.
themeService
=
this
.
instantiationService
.
createInstance
(
WorkbenchThemeService
,
document
.
body
);
...
...
@@ -546,9 +532,6 @@ export class Workbench extends Disposable implements IPartService {
// History
serviceCollection
.
set
(
IHistoryService
,
new
SyncDescriptor
(
HistoryService
));
// File Dialogs
serviceCollection
.
set
(
IFileDialogService
,
new
SyncDescriptor
(
FileDialogService
,
undefined
,
true
));
// Backup File Service
if
(
this
.
configuration
.
backupPath
)
{
this
.
backupFileService
=
this
.
instantiationService
.
createInstance
(
BackupFileService
,
this
.
configuration
.
backupPath
);
...
...
@@ -557,15 +540,6 @@ export class Workbench extends Disposable implements IPartService {
}
serviceCollection
.
set
(
IBackupFileService
,
this
.
backupFileService
);
// Text File Service
serviceCollection
.
set
(
ITextFileService
,
new
SyncDescriptor
(
TextFileService
));
// Text Model Resolver Service
serviceCollection
.
set
(
ITextModelService
,
new
SyncDescriptor
(
TextModelResolverService
,
undefined
,
true
));
// JSON Editing
serviceCollection
.
set
(
IJSONEditingService
,
new
SyncDescriptor
(
JSONEditingService
,
undefined
,
true
));
// Quick open service (quick open controller)
this
.
quickOpen
=
this
.
instantiationService
.
createInstance
(
QuickOpenController
);
serviceCollection
.
set
(
IQuickOpenService
,
this
.
quickOpen
);
...
...
@@ -574,9 +548,6 @@ export class Workbench extends Disposable implements IPartService {
this
.
quickInput
=
this
.
instantiationService
.
createInstance
(
QuickInputService
);
serviceCollection
.
set
(
IQuickInputService
,
this
.
quickInput
);
// PreferencesService
serviceCollection
.
set
(
IPreferencesService
,
new
SyncDescriptor
(
PreferencesService
));
// Contributed services
const
contributedServices
=
getServices
();
for
(
let
contributedService
of
contributedServices
)
{
...
...
src/vs/workbench/services/configuration/node/jsonEditingService.ts
浏览文件 @
a731d2e2
...
...
@@ -20,6 +20,7 @@ import { IFileService } from 'vs/platform/files/common/files';
import
{
ITextModelService
,
ITextEditorModel
}
from
'
vs/editor/common/services/resolverService
'
;
import
{
IJSONEditingService
,
IJSONValue
,
JSONEditingError
,
JSONEditingErrorCode
}
from
'
vs/workbench/services/configuration/common/jsonEditing
'
;
import
{
ITextModel
}
from
'
vs/editor/common/model
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
export
class
JSONEditingService
implements
IJSONEditingService
{
...
...
@@ -131,3 +132,5 @@ export class JSONEditingService implements IJSONEditingService {
}
}
}
registerSingleton
(
IJSONEditingService
,
JSONEditingService
,
true
);
\ No newline at end of file
src/vs/workbench/services/dialogs/electron-browser/dialogService.ts
浏览文件 @
a731d2e2
...
...
@@ -22,6 +22,7 @@ import { RemoteFileDialog } from 'vs/workbench/services/dialogs/electron-browser
import
{
WORKSPACE_EXTENSION
}
from
'
vs/platform/workspaces/common/workspaces
'
;
import
{
REMOTE_HOST_SCHEME
}
from
'
vs/platform/remote/common/remoteHosts
'
;
import
{
IConfigurationService
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
interface
IMassagedMessageBoxOptions
{
...
...
@@ -388,4 +389,7 @@ export class FileDialogService implements IFileDialogService {
function
isUntitledWorkspace
(
path
:
URI
,
environmentService
:
IEnvironmentService
):
boolean
{
return
resources
.
isEqualOrParent
(
path
,
environmentService
.
untitledWorkspacesHome
);
}
\ No newline at end of file
}
registerSingleton
(
IFileDialogService
,
FileDialogService
,
true
);
registerSingleton
(
IDialogService
,
DialogService
,
true
);
\ No newline at end of file
src/vs/workbench/services/preferences/browser/preferencesService.ts
浏览文件 @
a731d2e2
...
...
@@ -36,6 +36,7 @@ import { GroupDirection, IEditorGroup, IEditorGroupsService } from 'vs/workbench
import
{
DEFAULT_SETTINGS_EDITOR_SETTING
,
FOLDER_SETTINGS_PATH
,
getSettingsTargetName
,
IPreferencesEditorModel
,
IPreferencesService
,
ISetting
,
ISettingsEditorOptions
,
SettingsEditorOptions
,
USE_SPLIT_JSON_SETTING
}
from
'
vs/workbench/services/preferences/common/preferences
'
;
import
{
DefaultPreferencesEditorInput
,
KeybindingsEditorInput
,
PreferencesEditorInput
,
SettingsEditor2Input
}
from
'
vs/workbench/services/preferences/common/preferencesEditorInput
'
;
import
{
defaultKeybindingsContents
,
DefaultKeybindingsEditorModel
,
DefaultSettings
,
DefaultSettingsEditorModel
,
Settings2EditorModel
,
SettingsEditorModel
,
WorkspaceConfigurationEditorModel
,
DefaultRawSettingsEditorModel
}
from
'
vs/workbench/services/preferences/common/preferencesModels
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
const
emptyEditableSettingsContent
=
'
{
\n
}
'
;
...
...
@@ -590,3 +591,5 @@ export class PreferencesService extends Disposable implements IPreferencesServic
super
.
dispose
();
}
}
registerSingleton
(
IPreferencesService
,
PreferencesService
);
\ No newline at end of file
src/vs/workbench/services/textfile/common/textFileService.ts
浏览文件 @
a731d2e2
...
...
@@ -37,6 +37,7 @@ import { IModeService } from 'vs/editor/common/services/modeService';
import
{
IEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
coalesce
}
from
'
vs/base/common/arrays
'
;
import
{
trim
}
from
'
vs/base/common/strings
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
export
interface
IBackupResult
{
didBackup
:
boolean
;
...
...
@@ -978,3 +979,5 @@ export class TextFileService extends Disposable implements ITextFileService {
super
.
dispose
();
}
}
registerSingleton
(
ITextFileService
,
TextFileService
);
\ No newline at end of file
src/vs/workbench/services/textmodelResolver/common/textModelResolverService.ts
浏览文件 @
a731d2e2
...
...
@@ -16,6 +16,7 @@ import { ITextModelService, ITextModelContentProvider, ITextEditorModel } from '
import
{
IUntitledEditorService
}
from
'
vs/workbench/services/untitled/common/untitledEditorService
'
;
import
{
TextFileEditorModel
}
from
'
vs/workbench/services/textfile/common/textFileEditorModel
'
;
import
{
IFileService
}
from
'
vs/platform/files/common/files
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
class
ResourceModelCollection
extends
ReferenceCollection
<
Promise
<
ITextEditorModel
>>
{
...
...
@@ -171,3 +172,5 @@ export class TextModelResolverService implements ITextModelService {
return
this
.
resourceModelCollection
.
hasTextModelContentProvider
(
scheme
);
}
}
registerSingleton
(
ITextModelService
,
TextModelResolverService
,
true
);
\ No newline at end of file
src/vs/workbench/workbench.main.ts
浏览文件 @
a731d2e2
...
...
@@ -68,6 +68,11 @@ 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
'
;
import
'
vs/workbench/services/preferences/browser/preferencesService
'
;
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
'
;
registerSingleton
(
IMenuService
,
MenuService
,
true
);
registerSingleton
(
IListService
,
ListService
,
true
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录