Skip to content

Commit 876e2a3

Browse files
committed
Rebase code, update it to use async handling, Rows instead of _rows
1 parent 4d9069b commit 876e2a3

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/Views/RevisionFileTreeView.axaml.cs

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
using System;
22
using System.Collections.Generic;
3-
using System.Linq;
43
using System.IO;
4+
using System.Linq;
55
using System.Threading.Tasks;
6+
67
using Avalonia;
78
using Avalonia.Collections;
89
using Avalonia.Controls;
@@ -12,6 +13,7 @@
1213
using Avalonia.Media;
1314
using Avalonia.Platform.Storage;
1415
using Avalonia.VisualTree;
16+
1517
using SourceGit.ViewModels;
1618

1719
namespace SourceGit.Views
@@ -134,7 +136,7 @@ protected override async void OnKeyDown(KeyEventArgs e)
134136

135137
await App.CopyTextAsync(path);
136138
e.Handled = true;
137-
}
139+
}
138140
}
139141
else if (node.Backend is { Type: Models.ObjectType.Blob } file &&
140142
e.Key == Key.S &&
@@ -300,7 +302,7 @@ protected override async void OnPropertyChanged(AvaloniaPropertyChangedEventArgs
300302
var selectedNode = _revisionFileRowsListBox?.SelectedItem as RevisionFileTreeNode;
301303

302304
var expandedObjects = new List<Models.Object>();
303-
foreach (var node in _rows)
305+
foreach (var node in Rows)
304306
{
305307
if (node.IsExpanded)
306308
{
@@ -349,24 +351,24 @@ protected override async void OnPropertyChanged(AvaloniaPropertyChangedEventArgs
349351
}
350352
}
351353

352-
private void RestoreTreeState(List<Models.Object> expandedObjects, RevisionFileTreeNode selectedNode)
354+
private async void RestoreTreeState(List<Models.Object> expandedObjects, RevisionFileTreeNode selectedNode)
353355
{
354-
for (int i = 0; i < _rows.Count; i++)
356+
for (int i = 0; i < Rows.Count; i++)
355357
{
356-
var revisionFileTreeNode = _rows[i];
358+
var revisionFileTreeNode = Rows[i];
357359

358360
if (!revisionFileTreeNode.IsFolder)
359361
continue;
360362

361363
if (expandedObjects.FirstOrDefault(o => o.SHA == revisionFileTreeNode.Backend.SHA || o.Path == revisionFileTreeNode.Backend.Path) != null)
362364
{
363-
ToggleNodeIsExpanded(revisionFileTreeNode);
365+
await ToggleNodeIsExpandedAsync(revisionFileTreeNode);
364366
}
365367
}
366368

367369
if (selectedNode != null)
368370
{
369-
foreach (var node in _rows)
371+
foreach (var node in Rows)
370372
{
371373
if (node.Backend.SHA != selectedNode.Backend.SHA && node.Backend.Path != selectedNode.Backend.Path)
372374
continue;
@@ -393,7 +395,7 @@ private void OnTreeNodeContextRequested(object sender, ContextRequestedEventArgs
393395
_ => CreateRevisionFileContextMenu(repo, vm, commit, obj),
394396
};
395397
menu.Open(grid);
396-
}
398+
}
397399

398400
e.Handled = true;
399401
}
@@ -417,9 +419,9 @@ private async void OnRowsSelectionChanged(object sender, SelectionChangedEventAr
417419

418420
if (sender is ListBox { SelectedItem: ViewModels.RevisionFileTreeNode { IsFolder: false } node })
419421
await vm.ViewRevisionFileAsync(node.Backend);
420-
else
422+
else
421423
await vm.ViewRevisionFileAsync(null);
422-
}
424+
}
423425

424426
private async Task<List<ViewModels.RevisionFileTreeNode>> GetChildrenOfTreeNodeAsync(ViewModels.RevisionFileTreeNode node)
425427
{

0 commit comments

Comments
 (0)