Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
df10b760
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,发现更多精彩内容 >>
未验证
提交
df10b760
编写于
10月 18, 2019
作者:
A
Alex Ross
提交者:
GitHub
10月 18, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add command to window progress (#82365)
and add command to task building progress Fixes #81636
上级
3fe45ba4
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
14 addition
and
7 deletion
+14
-7
src/vs/platform/progress/common/progress.ts
src/vs/platform/progress/common/progress.ts
+6
-1
src/vs/workbench/contrib/tasks/browser/task.contribution.ts
src/vs/workbench/contrib/tasks/browser/task.contribution.ts
+1
-1
src/vs/workbench/services/progress/browser/progressService.ts
...vs/workbench/services/progress/browser/progressService.ts
+7
-5
未找到文件。
src/vs/platform/progress/common/progress.ts
浏览文件 @
df10b760
...
...
@@ -17,7 +17,7 @@ export interface IProgressService {
_serviceBrand
:
undefined
;
withProgress
<
R
=
any
>
(
options
:
IProgressOptions
|
IProgressNotificationOptions
|
IProgressCompositeOptions
,
task
:
(
progress
:
IProgress
<
IProgressStep
>
)
=>
Promise
<
R
>
,
onDidCancel
?:
()
=>
void
):
Promise
<
R
>
;
withProgress
<
R
=
any
>
(
options
:
IProgressOptions
|
IProgressNotificationOptions
|
IProgress
WindowOptions
|
IProgress
CompositeOptions
,
task
:
(
progress
:
IProgress
<
IProgressStep
>
)
=>
Promise
<
R
>
,
onDidCancel
?:
()
=>
void
):
Promise
<
R
>
;
}
export
interface
IProgressIndicator
{
...
...
@@ -59,6 +59,11 @@ export interface IProgressNotificationOptions extends IProgressOptions {
readonly
secondaryActions
?:
ReadonlyArray
<
IAction
>
;
}
export
interface
IProgressWindowOptions
extends
IProgressOptions
{
readonly
location
:
ProgressLocation
.
Window
;
readonly
command
?:
string
;
}
export
interface
IProgressCompositeOptions
extends
IProgressOptions
{
location
:
ProgressLocation
.
Explorer
|
ProgressLocation
.
Extensions
|
ProgressLocation
.
Scm
|
string
;
delay
?:
number
;
...
...
src/vs/workbench/contrib/tasks/browser/task.contribution.ts
浏览文件 @
df10b760
...
...
@@ -106,7 +106,7 @@ export class TaskStatusBarContributions extends Disposable implements IWorkbench
}
if
(
promise
&&
(
event
.
kind
===
TaskEventKind
.
Active
)
&&
(
this
.
activeTasksCount
===
1
))
{
this
.
progressService
.
withProgress
({
location
:
ProgressLocation
.
Window
},
progress
=>
{
this
.
progressService
.
withProgress
({
location
:
ProgressLocation
.
Window
,
command
:
'
workbench.action.tasks.showTasks
'
},
progress
=>
{
progress
.
report
({
message
:
nls
.
localize
(
'
building
'
,
'
Building...
'
)
});
return
promise
!
;
}).
then
(()
=>
{
...
...
src/vs/workbench/services/progress/browser/progressService.ts
浏览文件 @
df10b760
...
...
@@ -7,7 +7,7 @@ import 'vs/css!./media/progressService';
import
{
localize
}
from
'
vs/nls
'
;
import
{
IDisposable
,
dispose
,
DisposableStore
,
MutableDisposable
,
Disposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
IProgressService
,
IProgressOptions
,
IProgressStep
,
ProgressLocation
,
IProgress
,
Progress
,
IProgressCompositeOptions
,
IProgressNotificationOptions
,
IProgressRunner
,
IProgressIndicator
}
from
'
vs/platform/progress/common/progress
'
;
import
{
IProgressService
,
IProgressOptions
,
IProgressStep
,
ProgressLocation
,
IProgress
,
Progress
,
IProgressCompositeOptions
,
IProgressNotificationOptions
,
IProgressRunner
,
IProgressIndicator
,
IProgressWindowOptions
}
from
'
vs/platform/progress/common/progress
'
;
import
{
IViewletService
}
from
'
vs/workbench/services/viewlet/browser/viewlet
'
;
import
{
StatusbarAlignment
,
IStatusbarService
}
from
'
vs/workbench/services/statusbar/common/statusbar
'
;
import
{
timeout
}
from
'
vs/base/common/async
'
;
...
...
@@ -63,7 +63,7 @@ export class ProgressService extends Disposable implements IProgressService {
case
ProgressLocation
.
Notification
:
return
this
.
withNotificationProgress
({
...
options
,
location
},
task
,
onDidCancel
);
case
ProgressLocation
.
Window
:
return
this
.
withWindowProgress
(
options
,
task
);
return
this
.
withWindowProgress
(
{
...
options
,
location
}
,
task
);
case
ProgressLocation
.
Explorer
:
return
this
.
withViewletProgress
(
'
workbench.view.explorer
'
,
task
,
{
...
options
,
location
});
case
ProgressLocation
.
Scm
:
...
...
@@ -77,8 +77,8 @@ export class ProgressService extends Disposable implements IProgressService {
}
}
private
withWindowProgress
<
R
=
unknown
>
(
options
:
IProgressOptions
,
callback
:
(
progress
:
IProgress
<
{
message
?:
string
}
>
)
=>
Promise
<
R
>
):
Promise
<
R
>
{
const
task
:
[
IProgressOptions
,
Progress
<
IProgressStep
>
]
=
[
options
,
new
Progress
<
IProgressStep
>
(()
=>
this
.
updateWindowProgress
())];
private
withWindowProgress
<
R
=
unknown
>
(
options
:
IProgress
Window
Options
,
callback
:
(
progress
:
IProgress
<
{
message
?:
string
}
>
)
=>
Promise
<
R
>
):
Promise
<
R
>
{
const
task
:
[
IProgress
Window
Options
,
Progress
<
IProgressStep
>
]
=
[
options
,
new
Progress
<
IProgressStep
>
(()
=>
this
.
updateWindowProgress
())];
const
promise
=
callback
(
task
[
1
]);
...
...
@@ -110,6 +110,7 @@ export class ProgressService extends Disposable implements IProgressService {
let
progressTitle
=
options
.
title
;
let
progressMessage
=
progress
.
value
&&
progress
.
value
.
message
;
let
progressCommand
=
(
<
IProgressWindowOptions
>
options
).
command
;
let
text
:
string
;
let
title
:
string
;
...
...
@@ -136,7 +137,8 @@ export class ProgressService extends Disposable implements IProgressService {
this
.
globalStatusEntry
.
value
=
this
.
statusbarService
.
addEntry
({
text
:
`$(sync~spin)
${
text
}
`
,
tooltip
:
title
tooltip
:
title
,
command
:
progressCommand
},
'
status.progress
'
,
localize
(
'
status.progress
'
,
"
Progress Message
"
),
StatusbarAlignment
.
LEFT
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录