Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
c91995c7
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,发现更多精彩内容 >>
提交
c91995c7
编写于
1月 04, 2019
作者:
M
Matt Bierner
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Strict null check walkThroughPart
上级
6710ec0b
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
35 addition
and
28 deletion
+35
-28
src/tsconfig.strictNullChecks.json
src/tsconfig.strictNullChecks.json
+3
-0
src/vs/workbench/browser/parts/editor/baseEditor.ts
src/vs/workbench/browser/parts/editor/baseEditor.ts
+11
-11
src/vs/workbench/common/editor.ts
src/vs/workbench/common/editor.ts
+6
-6
src/vs/workbench/parts/welcome/walkThrough/electron-browser/walkThroughPart.ts
...s/welcome/walkThrough/electron-browser/walkThroughPart.ts
+15
-11
未找到文件。
src/tsconfig.strictNullChecks.json
浏览文件 @
c91995c7
...
...
@@ -523,6 +523,7 @@
"./vs/workbench/browser/composite.ts"
,
"./vs/workbench/browser/panel.ts"
,
"./vs/workbench/browser/part.ts"
,
"./vs/workbench/browser/parts/editor/baseEditor.ts"
,
"./vs/workbench/browser/parts/editor/editor.ts"
,
"./vs/workbench/browser/parts/editor/editorWidgets.ts"
,
"./vs/workbench/browser/parts/editor/rangeDecorations.ts"
,
...
...
@@ -698,6 +699,8 @@
"./vs/workbench/parts/welcome/page/electron-browser/welcomePage.contribution.ts"
,
"./vs/workbench/parts/welcome/page/electron-browser/welcomePage.ts"
,
"./vs/workbench/parts/welcome/walkThrough/electron-browser/editor/editorWalkThrough.ts"
,
"./vs/workbench/parts/welcome/walkThrough/electron-browser/walkThroughActions.ts"
,
"./vs/workbench/parts/welcome/walkThrough/electron-browser/walkThroughPart.ts"
,
"./vs/workbench/parts/welcome/walkThrough/node/walkThroughContentProvider.ts"
,
"./vs/workbench/parts/welcome/walkThrough/node/walkThroughInput.ts"
,
"./vs/workbench/parts/welcome/walkThrough/node/walkThroughUtils.ts"
,
...
...
src/vs/workbench/browser/parts/editor/baseEditor.ts
浏览文件 @
c91995c7
...
...
@@ -40,10 +40,10 @@ export abstract class BaseEditor extends Panel implements IEditor {
readonly
onDidSizeConstraintsChange
:
Event
<
{
width
:
number
;
height
:
number
;
}
>
=
Event
.
None
;
protected
_input
:
EditorInput
;
protected
_options
:
EditorOptions
;
protected
_input
:
EditorInput
|
null
;
protected
_options
:
EditorOptions
|
null
;
private
_group
:
IEditorGroup
;
private
_group
?
:
IEditorGroup
;
constructor
(
id
:
string
,
...
...
@@ -54,15 +54,15 @@ export abstract class BaseEditor extends Panel implements IEditor {
super
(
id
,
telemetryService
,
themeService
,
storageService
);
}
get
input
():
EditorInput
{
get
input
():
EditorInput
|
null
{
return
this
.
_input
;
}
get
options
():
EditorOptions
{
get
options
():
EditorOptions
|
null
{
return
this
.
_options
;
}
get
group
():
IEditorGroup
{
get
group
():
IEditorGroup
|
undefined
{
return
this
.
_group
;
}
...
...
@@ -129,7 +129,7 @@ export abstract class BaseEditor extends Panel implements IEditor {
* @param visible the state of visibility of this editor
* @param group the editor group this editor is in.
*/
protected
setEditorVisible
(
visible
:
boolean
,
group
:
IEditorGroup
):
void
{
protected
setEditorVisible
(
visible
:
boolean
,
group
:
IEditorGroup
|
undefined
):
void
{
this
.
_group
=
group
;
}
...
...
@@ -211,9 +211,9 @@ export class EditorMemento<T> implements IEditorMemento<T> {
}
}
loadEditorState
(
group
:
IEditorGroup
,
resource
:
URI
):
T
;
loadEditorState
(
group
:
IEditorGroup
,
editor
:
EditorInput
):
T
;
loadEditorState
(
group
:
IEditorGroup
,
resourceOrEditor
:
URI
|
EditorInput
):
T
{
loadEditorState
(
group
:
IEditorGroup
,
resource
:
URI
):
T
|
undefined
;
loadEditorState
(
group
:
IEditorGroup
,
editor
:
EditorInput
):
T
|
undefined
;
loadEditorState
(
group
:
IEditorGroup
,
resourceOrEditor
:
URI
|
EditorInput
):
T
|
undefined
{
const
resource
=
this
.
doGetResource
(
resourceOrEditor
);
if
(
!
resource
||
!
group
)
{
return
undefined
;
// we are not in a good state to load any state for a resource
...
...
@@ -247,7 +247,7 @@ export class EditorMemento<T> implements IEditorMemento<T> {
}
}
private
doGetResource
(
resourceOrEditor
:
URI
|
EditorInput
):
URI
{
private
doGetResource
(
resourceOrEditor
:
URI
|
EditorInput
):
URI
|
null
{
if
(
resourceOrEditor
instanceof
EditorInput
)
{
return
resourceOrEditor
.
getResource
();
}
...
...
src/vs/workbench/common/editor.ts
浏览文件 @
c91995c7
...
...
@@ -46,17 +46,17 @@ export interface IEditor {
/**
* The assigned input of this editor.
*/
input
:
IEditorInput
;
input
:
IEditorInput
|
null
;
/**
* The assigned options of this editor.
*/
options
:
IEditorOptions
;
options
:
IEditorOptions
|
null
;
/**
* The assigned group this editor is showing in.
*/
group
:
IEditorGroup
;
group
:
IEditorGroup
|
undefined
;
/**
* The minimum width of this editor.
...
...
@@ -91,7 +91,7 @@ export interface IEditor {
/**
* Returns the underlying control of this editor.
*/
getControl
():
IEditorControl
;
getControl
():
IEditorControl
|
null
;
/**
* Asks the underlying control to focus.
...
...
@@ -1007,8 +1007,8 @@ export interface IEditorMemento<T> {
saveEditorState
(
group
:
IEditorGroup
,
resource
:
URI
,
state
:
T
):
void
;
saveEditorState
(
group
:
IEditorGroup
,
editor
:
EditorInput
,
state
:
T
):
void
;
loadEditorState
(
group
:
IEditorGroup
,
resource
:
URI
):
T
;
loadEditorState
(
group
:
IEditorGroup
,
editor
:
EditorInput
):
T
;
loadEditorState
(
group
:
IEditorGroup
,
resource
:
URI
):
T
|
undefined
;
loadEditorState
(
group
:
IEditorGroup
,
editor
:
EditorInput
):
T
|
undefined
;
clearEditorState
(
resource
:
URI
,
group
?:
IEditorGroup
):
void
;
clearEditorState
(
editor
:
EditorInput
,
group
?:
IEditorGroup
):
void
;
...
...
src/vs/workbench/parts/welcome/walkThrough/electron-browser/walkThroughPart.ts
浏览文件 @
c91995c7
...
...
@@ -437,7 +437,7 @@ export class WalkThroughPart extends BaseEditor {
private
expandMacros
(
input
:
string
)
{
return
input
.
replace
(
/kb
\(([
a-z.
\d\-]
+
)\)
/gi
,
(
match
:
string
,
kb
:
string
)
=>
{
const
keybinding
=
this
.
keybindingService
.
lookupKeybinding
(
kb
);
const
shortcut
=
keybinding
?
keybinding
.
getLabel
()
:
UNBOUND_COMMAND
;
const
shortcut
=
keybinding
?
keybinding
.
getLabel
()
||
''
:
UNBOUND_COMMAND
;
return
`<span class="shortcut">
${
strings
.
escape
(
shortcut
)}
</span>`
;
});
}
...
...
@@ -447,7 +447,7 @@ export class WalkThroughPart extends BaseEditor {
Array
.
prototype
.
forEach
.
call
(
keys
,
(
key
:
Element
)
=>
{
const
command
=
key
.
getAttribute
(
'
data-command
'
);
const
keybinding
=
command
&&
this
.
keybindingService
.
lookupKeybinding
(
command
);
const
label
=
keybinding
?
keybinding
.
getLabel
()
:
UNBOUND_COMMAND
;
const
label
=
keybinding
?
keybinding
.
getLabel
()
||
''
:
UNBOUND_COMMAND
;
while
(
key
.
firstChild
)
{
key
.
removeChild
(
key
.
firstChild
);
}
...
...
@@ -477,18 +477,22 @@ export class WalkThroughPart extends BaseEditor {
private
saveTextEditorViewState
(
input
:
WalkThroughInput
):
void
{
const
scrollPosition
=
this
.
scrollbar
.
getScrollPosition
();
this
.
editorMemento
.
saveEditorState
(
this
.
group
,
input
,
{
viewState
:
{
scrollTop
:
scrollPosition
.
scrollTop
,
scrollLeft
:
scrollPosition
.
scrollLeft
}
});
if
(
this
.
group
)
{
this
.
editorMemento
.
saveEditorState
(
this
.
group
,
input
,
{
viewState
:
{
scrollTop
:
scrollPosition
.
scrollTop
,
scrollLeft
:
scrollPosition
.
scrollLeft
}
});
}
}
private
loadTextEditorViewState
(
input
:
WalkThroughInput
)
{
const
state
=
this
.
editorMemento
.
loadEditorState
(
this
.
group
,
input
);
if
(
state
)
{
this
.
scrollbar
.
setScrollPosition
(
state
.
viewState
);
if
(
this
.
group
)
{
const
state
=
this
.
editorMemento
.
loadEditorState
(
this
.
group
,
input
);
if
(
state
)
{
this
.
scrollbar
.
setScrollPosition
(
state
.
viewState
);
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录