Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
c8bf9160
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,发现更多精彩内容 >>
提交
c8bf9160
编写于
11月 17, 2019
作者:
W
Wowol
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add cursor change after revert or stage changes
上级
154f2ddf
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
6 deletion
+13
-6
extensions/git/src/commands.ts
extensions/git/src/commands.ts
+13
-6
未找到文件。
extensions/git/src/commands.ts
浏览文件 @
c8bf9160
...
...
@@ -6,7 +6,7 @@
import
{
lstat
,
Stats
}
from
'
fs
'
;
import
*
as
os
from
'
os
'
;
import
*
as
path
from
'
path
'
;
import
{
commands
,
Disposable
,
LineChange
,
MessageOptions
,
OutputChannel
,
Position
,
ProgressLocation
,
QuickPickItem
,
Range
,
SourceControlResourceState
,
TextDocumentShowOptions
,
TextEditor
,
Uri
,
ViewColumn
,
window
,
workspace
,
WorkspaceEdit
,
WorkspaceFolder
}
from
'
vscode
'
;
import
{
Selection
,
commands
,
Disposable
,
LineChange
,
MessageOptions
,
OutputChannel
,
Position
,
ProgressLocation
,
QuickPickItem
,
Range
,
SourceControlResourceState
,
TextDocumentShowOptions
,
TextEditor
,
Uri
,
ViewColumn
,
window
,
workspace
,
WorkspaceEdit
,
WorkspaceFolder
}
from
'
vscode
'
;
import
TelemetryReporter
from
'
vscode-extension-telemetry
'
;
import
*
as
nls
from
'
vscode-nls
'
;
import
{
Branch
,
GitErrorCodes
,
Ref
,
RefType
,
Status
}
from
'
./api/git
'
;
...
...
@@ -980,7 +980,10 @@ export class CommandCenter {
return
;
}
await
this
.
_stageChanges
(
textEditor
,
[
changes
[
index
]]);
await
this
.
_stageChanges
(
textEditor
,
[
changes
[
index
]]).
then
(()
=>
{
const
firstStagedLine
=
changes
[
index
].
modifiedStartLineNumber
-
1
;
textEditor
.
selections
=
[
new
Selection
(
firstStagedLine
,
0
,
firstStagedLine
,
0
)];
});
}
@
command
(
'
git.stageSelectedRanges
'
,
{
diff
:
true
})
...
...
@@ -1027,7 +1030,10 @@ export class CommandCenter {
return
;
}
await
this
.
_revertChanges
(
textEditor
,
[...
changes
.
slice
(
0
,
index
),
...
changes
.
slice
(
index
+
1
)]);
await
this
.
_revertChanges
(
textEditor
,
[...
changes
.
slice
(
0
,
index
),
...
changes
.
slice
(
index
+
1
)]).
then
(()
=>
{
const
firstStagedLine
=
changes
[
index
].
modifiedStartLineNumber
-
1
;
textEditor
.
selections
=
[
new
Selection
(
firstStagedLine
,
0
,
firstStagedLine
,
0
)];
});
}
@
command
(
'
git.revertSelectedRanges
'
,
{
diff
:
true
})
...
...
@@ -1049,7 +1055,10 @@ export class CommandCenter {
return
;
}
await
this
.
_revertChanges
(
textEditor
,
selectedChanges
);
const
selectionsBeforeRevert
=
textEditor
.
selections
;
await
this
.
_revertChanges
(
textEditor
,
selectedChanges
).
then
(()
=>
{
textEditor
.
selections
=
selectionsBeforeRevert
;
});
}
private
async
_revertChanges
(
textEditor
:
TextEditor
,
changes
:
LineChange
[]):
Promise
<
void
>
{
...
...
@@ -1062,7 +1071,6 @@ export class CommandCenter {
const
originalUri
=
toGitUri
(
modifiedUri
,
'
~
'
);
const
originalDocument
=
await
workspace
.
openTextDocument
(
originalUri
);
const
selectionsBeforeRevert
=
textEditor
.
selections
;
const
visibleRangesBeforeRevert
=
textEditor
.
visibleRanges
;
const
result
=
applyLineChanges
(
originalDocument
,
modifiedDocument
,
changes
);
...
...
@@ -1072,7 +1080,6 @@ export class CommandCenter {
await
modifiedDocument
.
save
();
textEditor
.
selections
=
selectionsBeforeRevert
;
textEditor
.
revealRange
(
visibleRangesBeforeRevert
[
0
]);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录