Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
baed4398
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
baed4398
编写于
7月 28, 2021
作者:
R
rebornix
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
keep custom editor when editor assocaition is available.
上级
fff02edb
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
2 deletion
+11
-2
src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.ts
.../contrib/customEditor/browser/customEditorInputFactory.ts
+11
-2
未找到文件。
src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.ts
浏览文件 @
baed4398
...
...
@@ -18,6 +18,7 @@ import { ICustomEditorService } from 'vs/workbench/contrib/customEditor/common/c
import
{
Schemas
}
from
'
vs/base/common/network
'
;
import
{
isEqual
}
from
'
vs/base/common/resources
'
;
import
{
NotebookEditorInput
}
from
'
vs/workbench/contrib/notebook/common/notebookEditorInput
'
;
import
{
IEditorResolverService
}
from
'
vs/workbench/services/editor/common/editorResolverService
'
;
export
interface
CustomDocumentBackupData
extends
IWorkingCopyBackupMeta
{
readonly
viewType
:
string
;
...
...
@@ -56,6 +57,7 @@ export class CustomEditorInputSerializer extends WebviewEditorInputSerializer {
@
IWebviewWorkbenchService
webviewWorkbenchService
:
IWebviewWorkbenchService
,
@
IInstantiationService
private
readonly
_instantiationService
:
IInstantiationService
,
@
IWebviewService
private
readonly
_webviewService
:
IWebviewService
,
@
IEditorResolverService
private
readonly
_editorResolverService
:
IEditorResolverService
)
{
super
(
webviewWorkbenchService
);
}
...
...
@@ -90,7 +92,10 @@ export class CustomEditorInputSerializer extends WebviewEditorInputSerializer {
):
CustomEditorInput
{
const
data
=
this
.
fromJson
(
JSON
.
parse
(
serializedEditorInput
));
if
(
data
.
viewType
===
'
jupyter.notebook.ipynb
'
)
{
return
NotebookEditorInput
.
create
(
this
.
_instantiationService
,
data
.
editorResource
,
'
jupyter-notebook
'
,
{
_backupId
:
data
.
backupId
,
startDirty
:
data
.
dirty
})
as
any
;
const
editorAssociation
=
this
.
_editorResolverService
.
getAssociationsForResource
(
data
.
editorResource
);
if
(
!
editorAssociation
.
find
(
association
=>
association
.
viewType
===
'
jupyter.notebook.ipynb
'
))
{
return
NotebookEditorInput
.
create
(
this
.
_instantiationService
,
data
.
editorResource
,
'
jupyter-notebook
'
,
{
_backupId
:
data
.
backupId
,
startDirty
:
data
.
dirty
})
as
any
;
}
}
const
webview
=
reviveWebview
(
this
.
_webviewService
,
data
);
...
...
@@ -118,6 +123,7 @@ export class ComplexCustomWorkingCopyEditorHandler extends Disposable implements
@
IInstantiationService
private
readonly
_instantiationService
:
IInstantiationService
,
@
IWorkingCopyEditorService
private
readonly
_workingCopyEditorService
:
IWorkingCopyEditorService
,
@
IWorkingCopyBackupService
private
readonly
_workingCopyBackupService
:
IWorkingCopyBackupService
,
@
IEditorResolverService
private
readonly
_editorResolverService
:
IEditorResolverService
,
@
IWebviewService
private
readonly
_webviewService
:
IWebviewService
,
@
ICustomEditorService
_customEditorService
:
ICustomEditorService
// DO NOT REMOVE (needed on startup to register overrides properly)
)
{
...
...
@@ -164,7 +170,10 @@ export class ComplexCustomWorkingCopyEditorHandler extends Disposable implements
const
backupData
=
backup
.
meta
;
if
(
backupData
.
viewType
===
'
jupyter.notebook.ipynb
'
)
{
return
NotebookEditorInput
.
create
(
this
.
_instantiationService
,
URI
.
revive
(
backupData
.
editorResource
),
'
jupyter-notebook
'
,
{
startDirty
:
!!
backupData
.
backupId
,
_backupId
:
backupData
.
backupId
,
_workingCopy
:
workingCopy
})
as
any
;
const
editorAssociation
=
this
.
_editorResolverService
.
getAssociationsForResource
(
URI
.
revive
(
backupData
.
editorResource
));
if
(
!
editorAssociation
.
find
(
association
=>
association
.
viewType
===
'
jupyter.notebook.ipynb
'
))
{
return
NotebookEditorInput
.
create
(
this
.
_instantiationService
,
URI
.
revive
(
backupData
.
editorResource
),
'
jupyter-notebook
'
,
{
startDirty
:
!!
backupData
.
backupId
,
_backupId
:
backupData
.
backupId
,
_workingCopy
:
workingCopy
})
as
any
;
}
}
const
id
=
backupData
.
webview
.
id
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录