Skip to content

Commit 68a409c

Browse files
committed
enhance: when cloning remote repo or opening local repo, the Group is No Group (Uncategorized) by default (#2258)
Signed-off-by: leo <longshuang@msn.cn>
1 parent b7796f1 commit 68a409c

2 files changed

Lines changed: 9 additions & 8 deletions

File tree

src/ViewModels/Clone.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,9 @@ public Clone(string pageId)
8585
_pageId = pageId;
8686

8787
Groups = new List<RepositoryNode>();
88+
Groups.Add(new RepositoryNode { Name = "No Group (Uncategorized)", Id = string.Empty });
89+
SelectedGroup = Groups[0];
8890
CollectGroups(Groups, Preferences.Instance.RepositoryNodes);
89-
if (Groups.Count > 0)
90-
SelectedGroup = Groups[0];
9191

9292
Bookmarks = new List<int>();
9393
for (var i = 0; i < Models.Bookmarks.Brushes.Length; i++)
@@ -166,7 +166,8 @@ public override async Task<bool> Sure()
166166

167167
log.Complete();
168168

169-
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(path, _selectedGroup, true);
169+
var parent = _selectedGroup is { Id: not "" } ? _selectedGroup : null;
170+
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(path, parent, true);
170171
node.Bookmark = _bookmark;
171172
await node.UpdateStatusAsync(false, null);
172173

src/ViewModels/OpenLocalRepository.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,11 @@ public int Bookmark
4141
public OpenLocalRepository(string pageId, RepositoryNode group)
4242
{
4343
_pageId = pageId;
44-
_group = group;
4544

4645
Groups = new List<RepositoryNode>();
46+
Groups.Add(new RepositoryNode { Name = "No Group (Uncategorized)", Id = string.Empty });
47+
Group = group ?? Groups[0];
4748
CollectGroups(Groups, Preferences.Instance.RepositoryNodes);
48-
if (Groups.Count > 0 && _group == null)
49-
Group = Groups[0];
5049

5150
Bookmarks = new List<int>();
5251
for (var i = 0; i < Models.Bookmarks.Brushes.Length; i++)
@@ -63,6 +62,7 @@ public static ValidationResult ValidateRepoPath(string folder, ValidationContext
6362
public override async Task<bool> Sure()
6463
{
6564
var isBare = await new Commands.IsBareRepository(_repoPath).GetResultAsync();
65+
var parent = _group is { Id: not "" } ? _group : null;
6666
var repoRoot = _repoPath;
6767
if (!isBare)
6868
{
@@ -78,7 +78,7 @@ public override async Task<bool> Sure()
7878
{
7979
if (page.Node.Id.Equals(_pageId, StringComparison.Ordinal))
8080
{
81-
page.Popup = new Init(page.Node.Id, _repoPath, _group, test.StdErr);
81+
page.Popup = new Init(page.Node.Id, _repoPath, parent, test.StdErr);
8282
break;
8383
}
8484
}
@@ -87,7 +87,7 @@ public override async Task<bool> Sure()
8787
}
8888
}
8989

90-
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(repoRoot, _group, true);
90+
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(repoRoot, parent, true);
9191
node.Bookmark = _bookmark;
9292
await node.UpdateStatusAsync(false, null);
9393
Welcome.Instance.Refresh();

0 commit comments

Comments
 (0)