Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
911fb9e7
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,发现更多精彩内容 >>
提交
911fb9e7
编写于
2月 18, 2018
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
notifications - allow to update severity too
上级
f1ea69be
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
32 addition
and
14 deletion
+32
-14
src/vs/platform/notification/common/notification.ts
src/vs/platform/notification/common/notification.ts
+3
-0
src/vs/workbench/browser/parts/notifications/notificationCommands.ts
...bench/browser/parts/notifications/notificationCommands.ts
+7
-7
src/vs/workbench/browser/parts/notifications/notificationsViewer.ts
...kbench/browser/parts/notifications/notificationsViewer.ts
+12
-5
src/vs/workbench/common/notifications.ts
src/vs/workbench/common/notifications.ts
+8
-0
src/vs/workbench/electron-browser/shell.ts
src/vs/workbench/electron-browser/shell.ts
+2
-2
未找到文件。
src/vs/platform/notification/common/notification.ts
浏览文件 @
911fb9e7
...
...
@@ -35,6 +35,7 @@ export interface INotificationProgress {
export
interface
INotificationHandle
extends
IDisposable
{
readonly
progress
:
INotificationProgress
;
updateSeverity
(
severity
:
Severity
):
void
;
updateMessage
(
message
:
string
|
IMarkdownString
|
Error
):
void
;
updateActions
(
actions
?:
INotificationActions
):
void
;
}
...
...
@@ -53,8 +54,10 @@ export interface INotificationService {
export
class
NoOpNotification
implements
INotificationHandle
{
readonly
progress
=
new
NoOpProgress
();
updateSeverity
(
severity
:
Severity
):
void
{
}
updateMessage
(
message
:
string
|
IMarkdownString
|
Error
):
void
{
}
updateActions
(
actions
?:
INotificationActions
):
void
{
}
dispose
():
void
{
}
}
...
...
src/vs/workbench/browser/parts/notifications/notificationCommands.ts
浏览文件 @
911fb9e7
...
...
@@ -227,15 +227,15 @@ export function registerNotificationCommands(center: INotificationsCenterControl
handle
.
updateMessage
(
'
Installing: error-ex...
'
);
handle
.
progress
.
worked
(
100
);
setTimeout
(()
=>
{
handle
.
updateMessage
(
'
Installation complete
'
);
handle
.
updateMessage
(
'
Installation complete
d
'
);
handle
.
progress
.
done
();
handle
.
updateActions
();
},
3
000
);
},
3
000
);
},
3
000
);
},
3
000
);
},
3
000
);
},
1
000
);
},
2
000
);
},
2
000
);
},
2
000
);
},
2
000
);
},
2
000
);
},
2
000
);
});
CommandsRegistry
.
registerCommand
(
'
notifications.showWarning
'
,
accessor
=>
{
...
...
src/vs/workbench/browser/parts/notifications/notificationsViewer.ts
浏览文件 @
911fb9e7
...
...
@@ -291,11 +291,8 @@ export class NotificationTemplateRenderer {
// Container
toggleClass
(
this
.
template
.
container
,
'
expanded
'
,
notification
.
expanded
);
// Icon
NotificationTemplateRenderer
.
SEVERITIES
.
forEach
(
severity
=>
{
const
domAction
=
notification
.
severity
===
this
.
toSeverity
(
severity
)
?
addClass
:
removeClass
;
domAction
(
this
.
template
.
icon
,
`icon-
${
severity
}
`
);
});
// Severity Icon
this
.
renderSeverity
(
notification
);
// Message
const
messageOverflows
=
this
.
renderMessage
(
notification
);
...
...
@@ -315,6 +312,9 @@ export class NotificationTemplateRenderer {
// Label Change Events
this
.
inputDisposeables
.
push
(
notification
.
onDidLabelChange
(
event
=>
{
switch
(
event
.
kind
)
{
case
NotificationViewItemLabelKind
.
SEVERITY
:
this
.
renderSeverity
(
notification
);
break
;
case
NotificationViewItemLabelKind
.
PROGRESS
:
this
.
renderProgress
(
notification
);
break
;
...
...
@@ -322,6 +322,13 @@ export class NotificationTemplateRenderer {
}));
}
private
renderSeverity
(
notification
:
INotificationViewItem
):
void
{
NotificationTemplateRenderer
.
SEVERITIES
.
forEach
(
severity
=>
{
const
domAction
=
notification
.
severity
===
this
.
toSeverity
(
severity
)
?
addClass
:
removeClass
;
domAction
(
this
.
template
.
icon
,
`icon-
${
severity
}
`
);
});
}
private
renderMessage
(
notification
:
INotificationViewItem
):
boolean
{
clearNode
(
this
.
template
.
message
);
this
.
template
.
message
.
appendChild
(
NotificationMessageMarkdownRenderer
.
render
(
notification
.
message
,
(
content
:
string
)
=>
this
.
openerService
.
open
(
URI
.
parse
(
content
)).
then
(
void
0
,
onUnexpectedError
)));
...
...
src/vs/workbench/common/notifications.ts
浏览文件 @
911fb9e7
...
...
@@ -85,6 +85,7 @@ export class NotificationsModel implements INotificationsModel {
worked
:
value
=>
item
.
progress
.
worked
(
value
),
done
:
()
=>
item
.
progress
.
done
()
},
updateSeverity
:
(
severity
:
Severity
)
=>
item
.
updateSeverity
(
severity
),
updateMessage
:
(
message
:
string
|
IMarkdownString
|
Error
)
=>
item
.
updateMessage
(
message
),
updateActions
:
(
actions
:
INotificationActions
)
=>
item
.
updateActions
(
actions
)
};
...
...
@@ -173,6 +174,7 @@ export interface INotificationViewItem {
hasProgress
():
boolean
;
updateSeverity
(
severity
:
Severity
):
void
;
updateMessage
(
message
:
string
|
IMarkdownString
|
Error
):
void
;
updateActions
(
actions
?:
INotificationActions
):
void
;
...
...
@@ -186,6 +188,7 @@ export function isNotificationViewItem(obj: any): obj is INotificationViewItem {
}
export
enum
NotificationViewItemLabelKind
{
SEVERITY
,
MESSAGE
,
ACTIONS
,
PROGRESS
...
...
@@ -426,6 +429,11 @@ export class NotificationViewItem implements INotificationViewItem {
return
this
.
_actions
;
}
public
updateSeverity
(
severity
:
Severity
):
void
{
this
.
_severity
=
severity
;
this
.
_onDidLabelChange
.
fire
({
kind
:
NotificationViewItemLabelKind
.
SEVERITY
});
}
public
updateMessage
(
input
:
string
|
IMarkdownString
|
Error
):
void
{
const
message
=
NotificationViewItem
.
toMarkdownString
(
input
);
if
(
!
message
)
{
...
...
src/vs/workbench/electron-browser/shell.ts
浏览文件 @
911fb9e7
...
...
@@ -346,6 +346,8 @@ export class WorkbenchShell {
const
instantiationService
:
IInstantiationService
=
new
InstantiationService
(
serviceCollection
,
true
);
serviceCollection
.
set
(
INotificationService
,
new
SyncDescriptor
(
NotificationService
,
container
));
this
.
broadcastService
=
instantiationService
.
createInstance
(
BroadcastService
,
this
.
configuration
.
windowId
);
serviceCollection
.
set
(
IBroadcastService
,
this
.
broadcastService
);
...
...
@@ -403,8 +405,6 @@ export class WorkbenchShell {
serviceCollection
.
set
(
IMessageService
,
this
.
messageService
);
serviceCollection
.
set
(
IChoiceService
,
this
.
messageService
);
serviceCollection
.
set
(
INotificationService
,
new
SyncDescriptor
(
NotificationService
,
container
));
const
lifecycleService
=
instantiationService
.
createInstance
(
LifecycleService
);
this
.
toUnbind
.
push
(
lifecycleService
.
onShutdown
(
reason
=>
this
.
dispose
(
reason
)));
serviceCollection
.
set
(
ILifecycleService
,
lifecycleService
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录