Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
ae0dbb39
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,体验更适合开发者的 AI 搜索 >>
提交
ae0dbb39
编写于
8月 31, 2020
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
💄
desktop => native
上级
ecdf4390
变更
16
隐藏空白更改
内联
并排
Showing
16 changed file
with
44 addition
and
44 deletion
+44
-44
src/vs/base/browser/ui/list/listView.ts
src/vs/base/browser/ui/list/listView.ts
+2
-2
src/vs/base/common/stream.ts
src/vs/base/common/stream.ts
+3
-3
src/vs/platform/environment/common/environment.ts
src/vs/platform/environment/common/environment.ts
+2
-2
src/vs/platform/files/common/files.ts
src/vs/platform/files/common/files.ts
+1
-1
src/vs/platform/menubar/electron-main/menubar.ts
src/vs/platform/menubar/electron-main/menubar.ts
+3
-3
src/vs/platform/windows/common/windows.ts
src/vs/platform/windows/common/windows.ts
+4
-4
src/vs/workbench/contrib/files/browser/views/explorerViewer.ts
...s/workbench/contrib/files/browser/views/explorerViewer.ts
+8
-8
src/vs/workbench/contrib/files/browser/views/openEditorsView.ts
.../workbench/contrib/files/browser/views/openEditorsView.ts
+2
-2
src/vs/workbench/contrib/terminal/electron-browser/terminalNativeContribution.ts
...b/terminal/electron-browser/terminalNativeContribution.ts
+3
-3
src/vs/workbench/electron-browser/desktop.main.ts
src/vs/workbench/electron-browser/desktop.main.ts
+2
-2
src/vs/workbench/electron-browser/window.ts
src/vs/workbench/electron-browser/window.ts
+4
-4
src/vs/workbench/services/extensionManagement/electron-browser/extensionManagementServerService.ts
...ment/electron-browser/extensionManagementServerService.ts
+2
-2
src/vs/workbench/services/extensionManagement/electron-browser/remoteExtensionManagementService.ts
...ment/electron-browser/remoteExtensionManagementService.ts
+1
-1
src/vs/workbench/services/host/electron-sandbox/nativeHostService.ts
...bench/services/host/electron-sandbox/nativeHostService.ts
+2
-2
src/vs/workbench/services/log/electron-browser/logService.ts
src/vs/workbench/services/log/electron-browser/logService.ts
+4
-4
src/vs/workbench/workbench.sandbox.main.ts
src/vs/workbench/workbench.sandbox.main.ts
+1
-1
未找到文件。
src/vs/base/browser/ui/list/listView.ts
浏览文件 @
ae0dbb39
...
...
@@ -121,7 +121,7 @@ export class ExternalElementsDragAndDropData<T> implements IDragAndDropData {
}
}
export
class
Desktop
DragAndDropData
implements
IDragAndDropData
{
export
class
Native
DragAndDropData
implements
IDragAndDropData
{
readonly
types
:
any
[];
readonly
files
:
any
[];
...
...
@@ -976,7 +976,7 @@ export class ListView<T> implements ISpliceable<T>, IDisposable {
return
false
;
}
this
.
currentDragData
=
new
Desktop
DragAndDropData
();
this
.
currentDragData
=
new
Native
DragAndDropData
();
}
}
...
...
src/vs/base/common/stream.ts
浏览文件 @
ae0dbb39
...
...
@@ -33,7 +33,7 @@ export interface ReadableStreamEvents<T> {
/**
* A interface that emulates the API shape of a node.js readable
* stream for use in
desktop
and web environments.
* stream for use in
native
and web environments.
*/
export
interface
ReadableStream
<
T
>
extends
ReadableStreamEvents
<
T
>
{
...
...
@@ -60,7 +60,7 @@ export interface ReadableStream<T> extends ReadableStreamEvents<T> {
/**
* A interface that emulates the API shape of a node.js readable
* for use in
desktop
and web environments.
* for use in
native
and web environments.
*/
export
interface
Readable
<
T
>
{
...
...
@@ -73,7 +73,7 @@ export interface Readable<T> {
/**
* A interface that emulates the API shape of a node.js writeable
* stream for use in
desktop
and web environments.
* stream for use in
native
and web environments.
*/
export
interface
WriteableStream
<
T
>
extends
ReadableStream
<
T
>
{
...
...
src/vs/platform/environment/common/environment.ts
浏览文件 @
ae0dbb39
...
...
@@ -23,7 +23,7 @@ export interface IEnvironmentService {
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// NOTE: DO NOT ADD ANY OTHER PROPERTY INTO THE COLLECTION HERE
// UNLESS THIS PROPERTY IS SUPPORTED BOTH IN WEB AND
DESKTOP
!!!!
// UNLESS THIS PROPERTY IS SUPPORTED BOTH IN WEB AND
NATIVE
!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
readonly
_serviceBrand
:
undefined
;
...
...
@@ -70,6 +70,6 @@ export interface IEnvironmentService {
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// NOTE: DO NOT ADD ANY OTHER PROPERTY INTO THE COLLECTION HERE
// UNLESS THIS PROPERTY IS SUPPORTED BOTH IN WEB AND
DESKTOP
!!!!
// UNLESS THIS PROPERTY IS SUPPORTED BOTH IN WEB AND
NATIVE
!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
src/vs/platform/files/common/files.ts
浏览文件 @
ae0dbb39
...
...
@@ -867,7 +867,7 @@ export function whenProviderRegistered(file: URI, fileService: IFileService): Pr
}
/**
*
Desktop
only: limits for memory sizes
*
Native
only: limits for memory sizes
*/
export
const
MIN_MAX_MEMORY_SIZE_MB
=
2048
;
export
const
FALLBACK_MAX_MEMORY_SIZE_MB
=
4096
;
...
...
src/vs/platform/menubar/electron-main/menubar.ts
浏览文件 @
ae0dbb39
...
...
@@ -7,7 +7,7 @@ import * as nls from 'vs/nls';
import
{
isMacintosh
,
language
}
from
'
vs/base/common/platform
'
;
import
{
IEnvironmentService
}
from
'
vs/platform/environment/common/environment
'
;
import
{
app
,
shell
,
Menu
,
MenuItem
,
BrowserWindow
,
MenuItemConstructorOptions
,
WebContents
,
Event
,
KeyboardEvent
}
from
'
electron
'
;
import
{
getTitleBarStyle
,
I
DesktopRunActionInWindowRequest
,
IDesktop
RunKeybindingInWindowRequest
,
IWindowOpenable
}
from
'
vs/platform/windows/common/windows
'
;
import
{
getTitleBarStyle
,
I
NativeRunActionInWindowRequest
,
INative
RunKeybindingInWindowRequest
,
IWindowOpenable
}
from
'
vs/platform/windows/common/windows
'
;
import
{
OpenContext
}
from
'
vs/platform/windows/node/window
'
;
import
{
IConfigurationService
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
ITelemetryService
}
from
'
vs/platform/telemetry/common/telemetry
'
;
...
...
@@ -754,10 +754,10 @@ export class Menubar {
}
if
(
invocation
.
type
===
'
commandId
'
)
{
const
runActionPayload
:
I
Desktop
RunActionInWindowRequest
=
{
id
:
invocation
.
commandId
,
from
:
'
menu
'
};
const
runActionPayload
:
I
Native
RunActionInWindowRequest
=
{
id
:
invocation
.
commandId
,
from
:
'
menu
'
};
activeWindow
.
sendWhenReady
(
'
vscode:runAction
'
,
runActionPayload
);
}
else
{
const
runKeybindingPayload
:
I
Desktop
RunKeybindingInWindowRequest
=
{
userSettingsLabel
:
invocation
.
userSettingsLabel
};
const
runKeybindingPayload
:
I
Native
RunKeybindingInWindowRequest
=
{
userSettingsLabel
:
invocation
.
userSettingsLabel
};
activeWindow
.
sendWhenReady
(
'
vscode:runKeybinding
'
,
runKeybindingPayload
);
}
}
else
{
...
...
src/vs/platform/windows/common/windows.ts
浏览文件 @
ae0dbb39
...
...
@@ -186,20 +186,20 @@ export interface IOpenFileRequest {
}
/**
* Additional context for the request on
desktop
only.
* Additional context for the request on
native
only.
*/
export
interface
I
Desktop
OpenFileRequest
extends
IOpenFileRequest
{
export
interface
I
Native
OpenFileRequest
extends
IOpenFileRequest
{
termProgram
?:
string
;
filesToWait
?:
IPathsToWaitForData
;
}
export
interface
I
Desktop
RunActionInWindowRequest
{
export
interface
I
Native
RunActionInWindowRequest
{
id
:
string
;
from
:
'
menu
'
|
'
touchbar
'
|
'
mouse
'
;
args
?:
any
[];
}
export
interface
I
Desktop
RunKeybindingInWindowRequest
{
export
interface
I
Native
RunKeybindingInWindowRequest
{
userSettingsLabel
:
string
;
}
...
...
src/vs/workbench/contrib/files/browser/views/explorerViewer.ts
浏览文件 @
ae0dbb39
...
...
@@ -34,7 +34,7 @@ import { fillResourceDataTransfers, CodeDataTransfers, extractResources, contain
import
{
IInstantiationService
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
IDragAndDropData
,
DataTransfers
}
from
'
vs/base/browser/dnd
'
;
import
{
Schemas
}
from
'
vs/base/common/network
'
;
import
{
Desktop
DragAndDropData
,
ExternalElementsDragAndDropData
,
ElementsDragAndDropData
}
from
'
vs/base/browser/ui/list/listView
'
;
import
{
Native
DragAndDropData
,
ExternalElementsDragAndDropData
,
ElementsDragAndDropData
}
from
'
vs/base/browser/ui/list/listView
'
;
import
{
isMacintosh
,
isWeb
}
from
'
vs/base/common/platform
'
;
import
{
IDialogService
,
IConfirmation
,
getFileNamesMessage
}
from
'
vs/platform/dialogs/common/dialogs
'
;
import
{
IWorkingCopyFileService
}
from
'
vs/workbench/services/workingCopy/common/workingCopyFileService
'
;
...
...
@@ -839,11 +839,11 @@ export class FileDragAndDrop implements ITreeDragAndDrop<ExplorerItem> {
private
handleDragOver
(
data
:
IDragAndDropData
,
target
:
ExplorerItem
|
undefined
,
targetIndex
:
number
|
undefined
,
originalEvent
:
DragEvent
):
boolean
|
ITreeDragOverReaction
{
const
isCopy
=
originalEvent
&&
((
originalEvent
.
ctrlKey
&&
!
isMacintosh
)
||
(
originalEvent
.
altKey
&&
isMacintosh
));
const
fromDesktop
=
data
instanceof
Desktop
DragAndDropData
;
const
effect
=
(
fromDesktop
||
isCopy
)
?
ListDragOverEffect
.
Copy
:
ListDragOverEffect
.
Move
;
const
isNative
=
data
instanceof
Native
DragAndDropData
;
const
effect
=
(
isNative
||
isCopy
)
?
ListDragOverEffect
.
Copy
:
ListDragOverEffect
.
Move
;
//
Desktop
DND
if
(
fromDesktop
)
{
//
Native
DND
if
(
isNative
)
{
if
(
!
containsDragType
(
originalEvent
,
DataTransfers
.
FILES
,
CodeDataTransfers
.
FILES
))
{
return
false
;
}
...
...
@@ -979,7 +979,7 @@ export class FileDragAndDrop implements ITreeDragAndDrop<ExplorerItem> {
}
// Desktop DND (Import file)
if
(
data
instanceof
Desktop
DragAndDropData
)
{
if
(
data
instanceof
Native
DragAndDropData
)
{
if
(
isWeb
)
{
this
.
handleWebExternalDrop
(
data
,
target
,
originalEvent
).
then
(
undefined
,
e
=>
this
.
notificationService
.
warn
(
e
));
}
else
{
...
...
@@ -992,7 +992,7 @@ export class FileDragAndDrop implements ITreeDragAndDrop<ExplorerItem> {
}
}
private
async
handleWebExternalDrop
(
data
:
Desktop
DragAndDropData
,
target
:
ExplorerItem
,
originalEvent
:
DragEvent
):
Promise
<
void
>
{
private
async
handleWebExternalDrop
(
data
:
Native
DragAndDropData
,
target
:
ExplorerItem
,
originalEvent
:
DragEvent
):
Promise
<
void
>
{
const
items
=
(
originalEvent
.
dataTransfer
as
unknown
as
IWebkitDataTransfer
).
items
;
// Somehow the items thing is being modified at random, maybe as a security
...
...
@@ -1205,7 +1205,7 @@ export class FileDragAndDrop implements ITreeDragAndDrop<ExplorerItem> {
});
}
private
async
handleExternalDrop
(
data
:
Desktop
DragAndDropData
,
target
:
ExplorerItem
,
originalEvent
:
DragEvent
):
Promise
<
void
>
{
private
async
handleExternalDrop
(
data
:
Native
DragAndDropData
,
target
:
ExplorerItem
,
originalEvent
:
DragEvent
):
Promise
<
void
>
{
// Check for dropped external files to be folders
const
droppedResources
=
extractResources
(
originalEvent
,
true
);
...
...
src/vs/workbench/contrib/files/browser/views/openEditorsView.ts
浏览文件 @
ae0dbb39
...
...
@@ -38,7 +38,7 @@ import { ViewPane } from 'vs/workbench/browser/parts/views/viewPaneContainer';
import
{
IViewletViewOptions
}
from
'
vs/workbench/browser/parts/views/viewsViewlet
'
;
import
{
IDragAndDropData
,
DataTransfers
}
from
'
vs/base/browser/dnd
'
;
import
{
memoize
}
from
'
vs/base/common/decorators
'
;
import
{
ElementsDragAndDropData
,
Desktop
DragAndDropData
}
from
'
vs/base/browser/ui/list/listView
'
;
import
{
ElementsDragAndDropData
,
Native
DragAndDropData
}
from
'
vs/base/browser/ui/list/listView
'
;
import
{
URI
}
from
'
vs/base/common/uri
'
;
import
{
withUndefinedAsNull
}
from
'
vs/base/common/types
'
;
import
{
isWeb
}
from
'
vs/base/common/platform
'
;
...
...
@@ -667,7 +667,7 @@ class OpenEditorsDragAndDrop implements IListDragAndDrop<OpenEditor | IEditorGro
}
onDragOver
(
data
:
IDragAndDropData
,
_targetElement
:
OpenEditor
|
IEditorGroup
,
_targetIndex
:
number
,
originalEvent
:
DragEvent
):
boolean
|
IListDragOverReaction
{
if
(
data
instanceof
Desktop
DragAndDropData
)
{
if
(
data
instanceof
Native
DragAndDropData
)
{
if
(
isWeb
)
{
return
false
;
// dropping files into editor is unsupported on web
}
...
...
src/vs/workbench/contrib/terminal/electron-browser/terminalNativeContribution.ts
浏览文件 @
ae0dbb39
...
...
@@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
import
{
ipcRenderer
}
from
'
vs/base/parts/sandbox/electron-sandbox/globals
'
;
import
{
I
Desktop
OpenFileRequest
}
from
'
vs/platform/windows/common/windows
'
;
import
{
I
Native
OpenFileRequest
}
from
'
vs/platform/windows/common/windows
'
;
import
{
URI
}
from
'
vs/base/common/uri
'
;
import
{
IFileService
}
from
'
vs/platform/files/common/files
'
;
import
{
getWindowsBuildNumber
,
linuxDistro
}
from
'
vs/workbench/contrib/terminal/node/terminal
'
;
...
...
@@ -30,7 +30,7 @@ export class TerminalNativeContribution extends Disposable implements IWorkbench
)
{
super
();
ipcRenderer
.
on
(
'
vscode:openFiles
'
,
(
_
:
unknown
,
request
:
I
Desktop
OpenFileRequest
)
=>
this
.
_onOpenFileRequest
(
request
));
ipcRenderer
.
on
(
'
vscode:openFiles
'
,
(
_
:
unknown
,
request
:
I
Native
OpenFileRequest
)
=>
this
.
_onOpenFileRequest
(
request
));
this
.
_register
(
electronService
.
onOSResume
(()
=>
this
.
_onOsResume
()));
this
.
_terminalService
.
setLinuxDistro
(
linuxDistro
);
...
...
@@ -53,7 +53,7 @@ export class TerminalNativeContribution extends Disposable implements IWorkbench
activeTab
.
terminalInstances
.
forEach
(
instance
=>
instance
.
forceRedraw
());
}
private
async
_onOpenFileRequest
(
request
:
I
Desktop
OpenFileRequest
):
Promise
<
void
>
{
private
async
_onOpenFileRequest
(
request
:
I
Native
OpenFileRequest
):
Promise
<
void
>
{
// if the request to open files is coming in from the integrated terminal (identified though
// the termProgram variable) and we are instructed to wait for editors close, wait for the
// marker file to get deleted and then focus back to the integrated terminal.
...
...
src/vs/workbench/electron-browser/desktop.main.ts
浏览文件 @
ae0dbb39
...
...
@@ -48,7 +48,7 @@ import { IProductService } from 'vs/platform/product/common/productService';
import
product
from
'
vs/platform/product/common/product
'
;
import
{
NativeResourceIdentityService
}
from
'
vs/platform/resource/node/resourceIdentityServiceImpl
'
;
import
{
IResourceIdentityService
}
from
'
vs/platform/resource/common/resourceIdentityService
'
;
import
{
Desktop
LogService
}
from
'
vs/workbench/services/log/electron-browser/logService
'
;
import
{
Native
LogService
}
from
'
vs/workbench/services/log/electron-browser/logService
'
;
import
{
IElectronService
,
ElectronService
}
from
'
vs/platform/electron/electron-sandbox/electron
'
;
class
DesktopMain
extends
Disposable
{
...
...
@@ -183,7 +183,7 @@ class DesktopMain extends Disposable {
serviceCollection
.
set
(
IProductService
,
productService
);
// Log
const
logService
=
this
.
_register
(
new
Desktop
LogService
(
this
.
configuration
.
windowId
,
mainProcessService
,
this
.
environmentService
));
const
logService
=
this
.
_register
(
new
Native
LogService
(
this
.
configuration
.
windowId
,
mainProcessService
,
this
.
environmentService
));
serviceCollection
.
set
(
ILogService
,
logService
);
// Remote
...
...
src/vs/workbench/electron-browser/window.ts
浏览文件 @
ae0dbb39
...
...
@@ -13,7 +13,7 @@ import { IFileService } from 'vs/platform/files/common/files';
import
{
toResource
,
IUntitledTextResourceEditorInput
,
SideBySideEditor
,
pathsToEditors
}
from
'
vs/workbench/common/editor
'
;
import
{
IEditorService
,
IResourceEditorInputType
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
ITelemetryService
}
from
'
vs/platform/telemetry/common/telemetry
'
;
import
{
IOpenFileRequest
,
IWindowsConfiguration
,
getTitleBarStyle
,
IAddFoldersRequest
,
I
DesktopRunActionInWindowRequest
,
IDesktopRunKeybindingInWindowRequest
,
IDesktop
OpenFileRequest
}
from
'
vs/platform/windows/common/windows
'
;
import
{
IOpenFileRequest
,
IWindowsConfiguration
,
getTitleBarStyle
,
IAddFoldersRequest
,
I
NativeRunActionInWindowRequest
,
INativeRunKeybindingInWindowRequest
,
INative
OpenFileRequest
}
from
'
vs/platform/windows/common/windows
'
;
import
{
ITitleService
}
from
'
vs/workbench/services/title/common/titleService
'
;
import
{
IWorkbenchThemeService
}
from
'
vs/workbench/services/themes/common/workbenchThemeService
'
;
import
{
applyZoom
}
from
'
vs/platform/windows/electron-sandbox/window
'
;
...
...
@@ -128,7 +128,7 @@ export class NativeWindow extends Disposable {
});
// Support runAction event
ipcRenderer
.
on
(
'
vscode:runAction
'
,
async
(
event
:
unknown
,
request
:
I
Desktop
RunActionInWindowRequest
)
=>
{
ipcRenderer
.
on
(
'
vscode:runAction
'
,
async
(
event
:
unknown
,
request
:
I
Native
RunActionInWindowRequest
)
=>
{
const
args
:
unknown
[]
=
request
.
args
||
[];
// If we run an action from the touchbar, we fill in the currently active resource
...
...
@@ -159,7 +159,7 @@ export class NativeWindow extends Disposable {
});
// Support runKeybinding event
ipcRenderer
.
on
(
'
vscode:runKeybinding
'
,
(
event
:
unknown
,
request
:
I
Desktop
RunKeybindingInWindowRequest
)
=>
{
ipcRenderer
.
on
(
'
vscode:runKeybinding
'
,
(
event
:
unknown
,
request
:
I
Native
RunKeybindingInWindowRequest
)
=>
{
if
(
document
.
activeElement
)
{
this
.
keybindingService
.
dispatchByUserSettingsLabel
(
request
.
userSettingsLabel
,
document
.
activeElement
);
}
...
...
@@ -547,7 +547,7 @@ export class NativeWindow extends Disposable {
this
.
workspaceEditingService
.
addFolders
(
foldersToAdd
);
}
private
async
onOpenFiles
(
request
:
I
Desktop
OpenFileRequest
):
Promise
<
void
>
{
private
async
onOpenFiles
(
request
:
I
Native
OpenFileRequest
):
Promise
<
void
>
{
const
inputs
:
IResourceEditorInputType
[]
=
[];
const
diffMode
=
!!
(
request
.
filesToDiff
&&
(
request
.
filesToDiff
.
length
===
2
));
...
...
src/vs/workbench/services/extensionManagement/electron-browser/extensionManagementServerService.ts
浏览文件 @
ae0dbb39
...
...
@@ -12,7 +12,7 @@ import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import
{
IChannel
}
from
'
vs/base/parts/ipc/common/ipc
'
;
import
{
ISharedProcessService
}
from
'
vs/platform/ipc/electron-browser/sharedProcessService
'
;
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
import
{
Desktop
RemoteExtensionManagementService
}
from
'
vs/workbench/services/extensionManagement/electron-browser/remoteExtensionManagementService
'
;
import
{
Native
RemoteExtensionManagementService
}
from
'
vs/workbench/services/extensionManagement/electron-browser/remoteExtensionManagementService
'
;
import
{
ILabelService
}
from
'
vs/platform/label/common/label
'
;
import
{
IExtension
}
from
'
vs/platform/extensions/common/extensions
'
;
import
{
IExtensionGalleryService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
...
...
@@ -43,7 +43,7 @@ export class ExtensionManagementServerService implements IExtensionManagementSer
this
.
_localExtensionManagementServer
=
{
extensionManagementService
:
localExtensionManagementService
,
id
:
'
local
'
,
label
:
localize
(
'
local
'
,
"
Local
"
)
};
const
remoteAgentConnection
=
remoteAgentService
.
getConnection
();
if
(
remoteAgentConnection
)
{
const
extensionManagementService
=
new
Desktop
RemoteExtensionManagementService
(
remoteAgentConnection
.
getChannel
<
IChannel
>
(
'
extensions
'
),
this
.
localExtensionManagementServer
,
logService
,
galleryService
,
configurationService
,
productService
);
const
extensionManagementService
=
new
Native
RemoteExtensionManagementService
(
remoteAgentConnection
.
getChannel
<
IChannel
>
(
'
extensions
'
),
this
.
localExtensionManagementServer
,
logService
,
galleryService
,
configurationService
,
productService
);
this
.
remoteExtensionManagementServer
=
{
id
:
'
remote
'
,
extensionManagementService
,
...
...
src/vs/workbench/services/extensionManagement/electron-browser/remoteExtensionManagementService.ts
浏览文件 @
ae0dbb39
...
...
@@ -22,7 +22,7 @@ import { joinPath } from 'vs/base/common/resources';
import
{
WebRemoteExtensionManagementService
}
from
'
vs/workbench/services/extensionManagement/common/remoteExtensionManagementService
'
;
import
{
IExtensionManagementServer
}
from
'
vs/workbench/services/extensionManagement/common/extensionManagement
'
;
export
class
Desktop
RemoteExtensionManagementService
extends
WebRemoteExtensionManagementService
implements
IExtensionManagementService
{
export
class
Native
RemoteExtensionManagementService
extends
WebRemoteExtensionManagementService
implements
IExtensionManagementService
{
private
readonly
localExtensionManagementService
:
IExtensionManagementService
;
...
...
src/vs/workbench/services/host/electron-sandbox/
desktop
HostService.ts
→
src/vs/workbench/services/host/electron-sandbox/
native
HostService.ts
浏览文件 @
ae0dbb39
...
...
@@ -12,7 +12,7 @@ import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/
import
{
IWindowOpenable
,
IOpenWindowOptions
,
isFolderToOpen
,
isWorkspaceToOpen
,
IOpenEmptyWindowOptions
}
from
'
vs/platform/windows/common/windows
'
;
import
{
Disposable
}
from
'
vs/base/common/lifecycle
'
;
export
class
Desktop
HostService
extends
Disposable
implements
IHostService
{
export
class
Native
HostService
extends
Disposable
implements
IHostService
{
declare
readonly
_serviceBrand
:
undefined
;
...
...
@@ -95,4 +95,4 @@ export class DesktopHostService extends Disposable implements IHostService {
}
}
registerSingleton
(
IHostService
,
Desktop
HostService
,
true
);
registerSingleton
(
IHostService
,
Native
HostService
,
true
);
src/vs/workbench/services/log/electron-browser/logService.ts
浏览文件 @
ae0dbb39
...
...
@@ -14,7 +14,7 @@ import { IWorkbenchContribution, IWorkbenchContributionsRegistry, Extensions } f
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
LifecyclePhase
}
from
'
vs/platform/lifecycle/common/lifecycle
'
;
export
class
Desktop
LogService
extends
DelegatedLogService
{
export
class
Native
LogService
extends
DelegatedLogService
{
private
readonly
bufferSpdLogService
:
BufferLogService
|
undefined
;
private
readonly
windowId
:
number
;
...
...
@@ -62,11 +62,11 @@ export class DesktopLogService extends DelegatedLogService {
}
}
class
Desktop
LogServiceInitContribution
implements
IWorkbenchContribution
{
class
Native
LogServiceInitContribution
implements
IWorkbenchContribution
{
constructor
(@
ILogService
logService
:
ILogService
)
{
if
(
logService
instanceof
Desktop
LogService
)
{
if
(
logService
instanceof
Native
LogService
)
{
logService
.
init
();
}
}
}
Registry
.
as
<
IWorkbenchContributionsRegistry
>
(
Extensions
.
Workbench
).
registerWorkbenchContribution
(
Desktop
LogServiceInitContribution
,
LifecyclePhase
.
Restored
);
Registry
.
as
<
IWorkbenchContributionsRegistry
>
(
Extensions
.
Workbench
).
registerWorkbenchContribution
(
Native
LogServiceInitContribution
,
LifecyclePhase
.
Restored
);
src/vs/workbench/workbench.sandbox.main.ts
浏览文件 @
ae0dbb39
...
...
@@ -28,7 +28,7 @@ import 'vs/workbench/services/update/electron-sandbox/updateService';
import
'
vs/workbench/services/url/electron-sandbox/urlService
'
;
import
'
vs/workbench/services/lifecycle/electron-sandbox/lifecycleService
'
;
import
'
vs/workbench/services/title/electron-sandbox/titleService
'
;
import
'
vs/workbench/services/host/electron-sandbox/
desktop
HostService
'
;
import
'
vs/workbench/services/host/electron-sandbox/
native
HostService
'
;
import
'
vs/workbench/services/request/electron-sandbox/requestService
'
;
import
'
vs/workbench/services/extensionResourceLoader/electron-sandbox/extensionResourceLoaderService
'
;
import
'
vs/workbench/services/clipboard/electron-sandbox/clipboardService
'
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录