Changes the file sort in the custom view

This commit is contained in:
Eric Amodio
2017-09-20 01:09:19 -04:00
parent 70071448d6
commit a114e2de87
4 changed files with 24 additions and 10 deletions

View File

@@ -13,6 +13,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
- Adds `gitlens.gitExplorer.enabled` setting to specify whether or not to show the `GitLens` custom view - closes [#144](https://github.com/eamodio/vscode-gitlens/issues/144)
### Changed
- Changes the sorting (now alphabetical) of files shown in the `GitLens` custom view
- Changes the default of the `gitlens.gitExplorer.commitFormat` setting to add parentheses around the commit id
- Removes many menu items from `editor/title` & `editor/title/context` by default -- can be re-enabled via the `gitlens.advanced.menus` setting

View File

@@ -42,14 +42,7 @@ export class CommitFileNode extends ExplorerNode {
}
}
const label = (this.displayAs & CommitFileNodeDisplayAs.CommitLabel)
? CommitFormatter.fromTemplate(this.getCommitTemplate(), this.commit, {
truncateMessageAtNewLine: true,
dataFormat: this.git.config.defaultDateFormat
} as ICommitFormatOptions)
: StatusFileFormatter.fromTemplate(this.getCommitFileTemplate(), this.status);
const item = new TreeItem(label, TreeItemCollapsibleState.None);
const item = new TreeItem(this.label, TreeItemCollapsibleState.None);
item.contextValue = this.resourceType;
const icon = (this.displayAs & CommitFileNodeDisplayAs.CommitIcon)
@@ -63,9 +56,25 @@ export class CommitFileNode extends ExplorerNode {
item.command = this.getCommand();
// Only cache the label for a single refresh
this._label = undefined;
return item;
}
private _label: string | undefined;
get label() {
if (this._label === undefined) {
this._label = (this.displayAs & CommitFileNodeDisplayAs.CommitLabel)
? CommitFormatter.fromTemplate(this.getCommitTemplate(), this.commit, {
truncateMessageAtNewLine: true,
dataFormat: this.git.config.defaultDateFormat
} as ICommitFormatOptions)
: StatusFileFormatter.fromTemplate(this.getCommitFileTemplate(), this.status);
}
return this._label;
}
protected getCommitTemplate() {
return this.git.config.gitExplorer.commitFormat;
}

View File

@@ -26,7 +26,9 @@ export class CommitNode extends ExplorerNode {
const commit = Iterables.first(log.commits.values());
if (commit === undefined) return [];
return [...Iterables.map(commit.fileStatuses, s => new CommitFileNode(s, commit, this.context, this.git, CommitFileNodeDisplayAs.File, this.branch))];
const children = [...Iterables.map(commit.fileStatuses, s => new CommitFileNode(s, commit, this.context, this.git, CommitFileNodeDisplayAs.File, this.branch))];
children.sort((a, b) => a.label!.localeCompare(b.label!));
return children;
}
getTreeItem(): TreeItem {

View File

@@ -31,7 +31,9 @@ export class StashNode extends ExplorerNode {
}
}
return statuses.map(s => new StashFileNode(s, this.commit, this.context, this.git));
const children = statuses.map(s => new StashFileNode(s, this.commit, this.context, this.git));
children.sort((a, b) => a.label!.localeCompare(b.label!));
return children;
}
getTreeItem(): TreeItem {