@@ -50,25 +50,27 @@ private void UpdateContent()
5050
5151 if ( node . Backend is Models . Remote )
5252 {
53- CreateContent ( new Thickness ( 0 , 0 , 0 , 0 ) , "Icons.Remote" , false ) ;
53+ CreateContent ( new Thickness ( 0 , 0 , 0 , 0 ) , "Icons.Remote" ) ;
5454 }
5555 else if ( node . Backend is Models . Branch branch )
5656 {
5757 if ( branch . IsCurrent )
58- CreateContent ( new Thickness ( 0 , 0 , 0 , 0 ) , "Icons.CheckCircled" , true ) ;
58+ CreateContent ( new Thickness ( 0 , 0 , 0 , 0 ) , "Icons.CheckCircled" , Brushes . Green ) ;
59+ else if ( branch . IsLocal && ! string . IsNullOrEmpty ( branch . WorktreePath ) )
60+ CreateContent ( new Thickness ( 2 , 0 , 0 , 0 ) , "Icons.Branch" , Brushes . Cyan ) ;
5961 else
60- CreateContent ( new Thickness ( 2 , 0 , 0 , 0 ) , "Icons.Branch" , false ) ;
62+ CreateContent ( new Thickness ( 2 , 0 , 0 , 0 ) , "Icons.Branch" ) ;
6163 }
6264 else
6365 {
6466 if ( node . IsExpanded )
65- CreateContent ( new Thickness ( 0 , 2 , 0 , 0 ) , "Icons.Folder.Open" , false ) ;
67+ CreateContent ( new Thickness ( 0 , 2 , 0 , 0 ) , "Icons.Folder.Open" ) ;
6668 else
67- CreateContent ( new Thickness ( 0 , 2 , 0 , 0 ) , "Icons.Folder" , false ) ;
69+ CreateContent ( new Thickness ( 0 , 2 , 0 , 0 ) , "Icons.Folder" ) ;
6870 }
6971 }
7072
71- private void CreateContent ( Thickness margin , string iconKey , bool highlight )
73+ private void CreateContent ( Thickness margin , string iconKey , IBrush fill = null )
7274 {
7375 if ( this . FindResource ( iconKey ) is not StreamGeometry geo )
7476 return ;
@@ -83,8 +85,8 @@ private void CreateContent(Thickness margin, string iconKey, bool highlight)
8385 Data = geo ,
8486 } ;
8587
86- if ( highlight )
87- path . Fill = Brushes . Green ;
88+ if ( fill != null )
89+ path . Fill = fill ;
8890
8991 Content = path ;
9092 }
0 commit comments