@@ -210,7 +210,21 @@ public List<Models.Submodule> Submodules
210
210
private set => SetProperty ( ref _submodules , value ) ;
211
211
}
212
212
213
- public SubmoduleCollection VisibleSubmodules
213
+ public bool ShowSubmodulesAsTree
214
+ {
215
+ get => Preferences . Instance . ShowSubmodulesAsTree ;
216
+ set
217
+ {
218
+ if ( value != Preferences . Instance . ShowSubmodulesAsTree )
219
+ {
220
+ Preferences . Instance . ShowSubmodulesAsTree = value ;
221
+ VisibleSubmodules = BuildVisibleSubmodules ( ) ;
222
+ OnPropertyChanged ( ) ;
223
+ }
224
+ }
225
+ }
226
+
227
+ public object VisibleSubmodules
214
228
{
215
229
get => _visibleSubmodules ;
216
230
private set => SetProperty ( ref _visibleSubmodules , value ) ;
@@ -536,7 +550,7 @@ public void Close()
536
550
_tags . Clear ( ) ;
537
551
_visibleTags . Clear ( ) ;
538
552
_submodules . Clear ( ) ;
539
- _visibleSubmodules . Clear ( ) ;
553
+ _visibleSubmodules = null ;
540
554
_searchedCommits . Clear ( ) ;
541
555
_selectedSearchedCommit = null ;
542
556
@@ -2512,7 +2526,7 @@ private BranchTreeNode.Builder BuildBranchTree(List<Models.Branch> branches, Lis
2512
2526
return visible ;
2513
2527
}
2514
2528
2515
- private SubmoduleCollection BuildVisibleSubmodules ( )
2529
+ private object BuildVisibleSubmodules ( )
2516
2530
{
2517
2531
var visible = new List < Models . Submodule > ( ) ;
2518
2532
if ( string . IsNullOrEmpty ( _filter ) )
@@ -2528,7 +2542,10 @@ private SubmoduleCollection BuildVisibleSubmodules()
2528
2542
}
2529
2543
}
2530
2544
2531
- return SubmoduleCollection . Build ( visible , _visibleSubmodules ) ;
2545
+ if ( Preferences . Instance . ShowSubmodulesAsTree )
2546
+ return SubmoduleCollectionAsTree . Build ( visible , _visibleSubmodules as SubmoduleCollectionAsTree ) ;
2547
+ else
2548
+ return new SubmoduleCollectionAsList ( ) { Submodules = visible } ;
2532
2549
}
2533
2550
2534
2551
private void RefreshHistoriesFilters ( bool refresh )
@@ -2760,7 +2777,7 @@ private void AutoFetchImpl(object sender)
2760
2777
private List < Models . Tag > _tags = new List < Models . Tag > ( ) ;
2761
2778
private List < Models . Tag > _visibleTags = new List < Models . Tag > ( ) ;
2762
2779
private List < Models . Submodule > _submodules = new List < Models . Submodule > ( ) ;
2763
- private SubmoduleCollection _visibleSubmodules = new SubmoduleCollection ( ) ;
2780
+ private object _visibleSubmodules = null ;
2764
2781
2765
2782
private bool _isAutoFetching = false ;
2766
2783
private Timer _autoFetchTimer = null ;
0 commit comments