@@ -101,7 +101,7 @@ class StatusViewModel @Inject constructor(
101101 state.staged
102102 }.prioritizeConflicts()
103103
104- state.copy(staged = staged, unstaged = unstaged)
104+ state.copy(filteredStaged = staged, filteredUnstaged = unstaged)
105105
106106 } else {
107107 state
@@ -128,12 +128,19 @@ class StatusViewModel @Inject constructor(
128128 stageStateFiltered.unstaged,
129129 contractedDirectories
130130 ) { it.filePath },
131+ filteredStaged = entriesToTreeEntry(stageStateFiltered.filteredStaged, contractedDirectories) { it.filePath },
132+ filteredUnstaged = entriesToTreeEntry(
133+ stageStateFiltered.filteredUnstaged,
134+ contractedDirectories
135+ ) { it.filePath },
131136 isPartiallyReloading = stageStateFiltered.isPartiallyReloading,
132137 )
133138 } else {
134139 StageStateUi .ListLoaded (
135140 staged = stageStateFiltered.staged,
136141 unstaged = stageStateFiltered.unstaged,
142+ filteredStaged = stageStateFiltered.filteredStaged,
143+ filteredUnstaged = stageStateFiltered.filteredUnstaged,
137144 isPartiallyReloading = stageStateFiltered.isPartiallyReloading,
138145 )
139146 }
@@ -310,7 +317,9 @@ class StatusViewModel @Inject constructor(
310317
311318 _stageState .value = StageState .Loaded (
312319 staged = staged,
320+ filteredStaged = staged,
313321 unstaged = unstaged,
322+ filteredUnstaged = unstaged,
314323 isPartiallyReloading = false ,
315324 )
316325 }
@@ -610,7 +619,9 @@ sealed interface StageState {
610619 data object Loading : StageState
611620 data class Loaded (
612621 val staged : List <StatusEntry >,
622+ val filteredStaged : List <StatusEntry >,
613623 val unstaged : List <StatusEntry >,
624+ val filteredUnstaged : List <StatusEntry >,
614625 val isPartiallyReloading : Boolean ,
615626 ) : StageState
616627}
@@ -637,7 +648,9 @@ sealed interface StageStateUi {
637648
638649 data class TreeLoaded (
639650 val staged : List <TreeItem <StatusEntry >>,
651+ val filteredStaged : List <TreeItem <StatusEntry >>,
640652 val unstaged : List <TreeItem <StatusEntry >>,
653+ val filteredUnstaged : List <TreeItem <StatusEntry >>,
641654 val isPartiallyReloading : Boolean ,
642655 ) : Loaded {
643656
@@ -651,7 +664,9 @@ sealed interface StageStateUi {
651664
652665 data class ListLoaded (
653666 val staged : List <StatusEntry >,
667+ val filteredStaged : List <StatusEntry >,
654668 val unstaged : List <StatusEntry >,
669+ val filteredUnstaged : List <StatusEntry >,
655670 val isPartiallyReloading : Boolean ,
656671 ) : Loaded {
657672 override val hasStagedFiles: Boolean = staged.isNotEmpty()
0 commit comments