Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
fd281a7e
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,发现更多精彩内容 >>
提交
fd281a7e
编写于
7月 21, 2017
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix casing in recently opened
上级
de7e216e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
9 addition
and
8 deletion
+9
-8
src/vs/platform/history/electron-main/historyMainService.ts
src/vs/platform/history/electron-main/historyMainService.ts
+9
-8
未找到文件。
src/vs/platform/history/electron-main/historyMainService.ts
浏览文件 @
fd281a7e
...
...
@@ -19,6 +19,7 @@ import { isWindows, isMacintosh, isLinux } from 'vs/base/common/platform';
import
{
IWorkspaceIdentifier
,
IWorkspacesMainService
,
getWorkspaceLabel
,
ISingleFolderWorkspaceIdentifier
,
isSingleFolderWorkspaceIdentifier
,
IWorkspaceSavedEvent
}
from
"
vs/platform/workspaces/common/workspaces
"
;
import
{
IHistoryMainService
,
IRecentlyOpened
}
from
"
vs/platform/history/common/history
"
;
import
{
IEnvironmentService
}
from
"
vs/platform/environment/common/environment
"
;
import
{
isEqual
}
from
"
vs/base/common/paths
"
;
export
interface
ILegacyRecentlyOpened
extends
IRecentlyOpened
{
folders
:
string
[];
// TODO@Ben migration
...
...
@@ -77,7 +78,7 @@ export class HistoryMainService implements IHistoryMainService {
// Files
files
.
forEach
((
path
)
=>
{
mru
.
files
.
unshift
(
path
);
mru
.
files
=
arrays
.
distinct
(
mru
.
files
,
f
=>
isLinux
?
f
:
f
.
toLowerCase
(
));
mru
.
files
=
arrays
.
distinct
(
mru
.
files
,
f
ile
=>
this
.
distinctFn
(
file
));
// Add to recent documents (Windows/macOS only)
if
(
isMacintosh
||
isWindows
)
{
...
...
@@ -101,14 +102,14 @@ export class HistoryMainService implements IHistoryMainService {
pathsToRemove
.
forEach
((
pathToRemove
=>
{
// Remove workspace
let
index
=
arrays
.
firstIndex
(
mru
.
workspaces
,
workspace
=>
is
SingleFolderWorkspaceIdentifier
(
workspace
)
?
workspace
===
pathToRemove
:
workspace
.
configPath
===
pathToRemove
);
let
index
=
arrays
.
firstIndex
(
mru
.
workspaces
,
workspace
=>
is
Equal
(
isSingleFolderWorkspaceIdentifier
(
workspace
)
?
workspace
:
workspace
.
configPath
,
pathToRemove
,
!
isLinux
/* ignorecase */
)
);
if
(
index
>=
0
)
{
mru
.
workspaces
.
splice
(
index
,
1
);
update
=
true
;
}
// Remove file
index
=
mru
.
files
.
indexOf
(
pathToRemove
);
index
=
arrays
.
firstIndex
(
mru
.
files
,
file
=>
isEqual
(
file
,
pathToRemove
,
!
isLinux
/* ignorecase */
)
);
if
(
index
>=
0
)
{
mru
.
files
.
splice
(
index
,
1
);
update
=
true
;
...
...
@@ -155,7 +156,7 @@ export class HistoryMainService implements IHistoryMainService {
// Clear those dupes
workspaces
=
arrays
.
distinct
(
workspaces
,
workspace
=>
this
.
distinctFn
(
workspace
));
files
=
arrays
.
distinct
(
files
);
files
=
arrays
.
distinct
(
files
,
file
=>
this
.
distinctFn
(
file
)
);
// Hide untitled workspaces
workspaces
=
workspaces
.
filter
(
workspace
=>
isSingleFolderWorkspaceIdentifier
(
workspace
)
||
!
this
.
workspacesService
.
isUntitledWorkspace
(
workspace
));
...
...
@@ -163,12 +164,12 @@ export class HistoryMainService implements IHistoryMainService {
return
{
workspaces
,
files
};
}
private
distinctFn
(
workspace
:
IWorkspaceIdentifier
|
ISingleFolderWorkspaceIdentifier
):
string
{
if
(
isSingleFolderWorkspaceIdentifier
(
workspace
)
)
{
return
isLinux
?
workspace
:
workspac
e
.
toLowerCase
();
private
distinctFn
(
workspace
OrFile
:
IWorkspaceIdentifier
|
ISingleFolderWorkspaceIdentifier
|
string
):
string
{
if
(
isSingleFolderWorkspaceIdentifier
(
workspace
OrFile
)
||
typeof
workspaceOrFile
===
'
string
'
)
{
return
isLinux
?
workspace
OrFile
:
workspaceOrFil
e
.
toLowerCase
();
}
return
workspace
.
id
+
(
isLinux
?
workspace
.
configPath
:
workspac
e
.
configPath
.
toLowerCase
());
// ID and configPath form a unique workspace
return
workspace
OrFile
.
id
+
(
isLinux
?
workspaceOrFile
.
configPath
:
workspaceOrFil
e
.
configPath
.
toLowerCase
());
// ID and configPath form a unique workspace
}
private
saveRecentlyOpened
(
recent
:
IRecentlyOpened
):
void
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录