Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
3c0cc045
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,发现更多精彩内容 >>
提交
3c0cc045
编写于
3月 03, 2020
作者:
M
Matt Bierner
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
💄
上级
25ef9b47
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
21 addition
and
13 deletion
+21
-13
src/vs/workbench/api/browser/mainThreadWebview.ts
src/vs/workbench/api/browser/mainThreadWebview.ts
+21
-13
未找到文件。
src/vs/workbench/api/browser/mainThreadWebview.ts
浏览文件 @
3c0cc045
...
...
@@ -10,6 +10,7 @@ import { Disposable, DisposableStore, IDisposable, IReference } from 'vs/base/co
import
{
Schemas
}
from
'
vs/base/common/network
'
;
import
{
basename
}
from
'
vs/base/common/path
'
;
import
{
isWeb
}
from
'
vs/base/common/platform
'
;
import
{
escape
}
from
'
vs/base/common/strings
'
;
import
{
URI
,
UriComponents
}
from
'
vs/base/common/uri
'
;
import
*
as
modes
from
'
vs/editor/common/modes
'
;
import
{
localize
}
from
'
vs/nls
'
;
...
...
@@ -438,7 +439,7 @@ export class MainThreadWebviews extends Disposable implements extHostProtocol.Ma
private
getWebviewInput
(
handle
:
extHostProtocol
.
WebviewPanelHandle
):
WebviewInput
{
const
webview
=
this
.
tryGetWebviewInput
(
handle
);
if
(
!
webview
)
{
throw
new
Error
(
'
Unknown webview handle:
'
+
handle
);
throw
new
Error
(
`Unknown webview handle:
${
handle
}
`
);
}
return
webview
;
}
...
...
@@ -454,7 +455,7 @@ export class MainThreadWebviews extends Disposable implements extHostProtocol.Ma
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<meta http-equiv="Content-Security-Policy" content="default-src 'none';">
</head>
<body>
${
localize
(
'
errorMessage
'
,
"
An error occurred while restoring view:{0}
"
,
viewType
)}
</body>
<body>
${
localize
(
'
errorMessage
'
,
"
An error occurred while restoring view:{0}
"
,
escape
(
viewType
)
)}
</body>
</html>`
;
}
}
...
...
@@ -505,14 +506,19 @@ class MainThreadCustomEditorModel extends Disposable implements ICustomEditorMod
private
_hotExitState
:
HotExitState
.
State
=
HotExitState
.
Allowed
;
private
_dirty
=
false
;
public
static
async
create
(
instantiationService
:
IInstantiationService
,
proxy
:
extHostProtocol
.
ExtHostWebviewsShape
,
viewType
:
string
,
resource
:
URI
)
{
public
static
async
create
(
instantiationService
:
IInstantiationService
,
proxy
:
extHostProtocol
.
ExtHostWebviewsShape
,
viewType
:
string
,
resource
:
URI
)
{
const
{
editable
}
=
await
proxy
.
$createWebviewCustomEditorDocument
(
resource
,
viewType
);
return
instantiationService
.
createInstance
(
MainThreadCustomEditorModel
,
proxy
,
viewType
,
resource
,
editable
);
}
constructor
(
private
readonly
_proxy
:
extHostProtocol
.
ExtHostWebviewsShape
,
p
ublic
readonly
viewType
:
string
,
p
rivate
readonly
_
viewType
:
string
,
private
readonly
_resource
:
URI
,
private
readonly
_editable
:
boolean
,
@
IWorkingCopyService
workingCopyService
:
IWorkingCopyService
,
...
...
@@ -524,15 +530,13 @@ class MainThreadCustomEditorModel extends Disposable implements ICustomEditorMod
}
dispose
()
{
this
.
_proxy
.
$disposeWebviewCustomEditorDocument
(
this
.
resource
,
this
.
viewType
);
this
.
_proxy
.
$disposeWebviewCustomEditorDocument
(
this
.
resource
,
this
.
_
viewType
);
super
.
dispose
();
}
//#region IWorkingCopy
public
get
resource
()
{
return
this
.
_resource
;
}
public
get
resource
()
{
return
this
.
_resource
;
}
public
get
name
()
{
return
basename
(
this
.
_labelService
.
getUriLabel
(
this
.
_resource
));
...
...
@@ -554,6 +558,10 @@ class MainThreadCustomEditorModel extends Disposable implements ICustomEditorMod
//#endregion
public
get
viewType
()
{
return
this
.
_viewType
;
}
public
setDirty
(
dirty
:
boolean
):
void
{
this
.
_onDidChangeContent
.
fire
();
...
...
@@ -582,15 +590,15 @@ class MainThreadCustomEditorModel extends Disposable implements ICustomEditorMod
}
public
async
saveAs
(
resource
:
URI
,
targetResource
:
URI
,
_options
?:
ISaveOptions
):
Promise
<
boolean
>
{
if
(
!
this
.
_editable
)
{
if
(
this
.
_editable
)
{
await
this
.
_proxy
.
$onSaveAs
(
this
.
resource
,
this
.
viewType
,
targetResource
);
this
.
setDirty
(
false
);
return
true
;
}
else
{
// Since the editor is readonly, just copy the file over
await
this
.
_fileService
.
copy
(
resource
,
targetResource
,
false
/* overwrite */
);
return
true
;
}
await
this
.
_proxy
.
$onSaveAs
(
this
.
resource
,
this
.
viewType
,
targetResource
);
this
.
setDirty
(
false
);
return
true
;
}
public
async
backup
():
Promise
<
IWorkingCopyBackup
>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录