diff --git a/changelog/unreleased/4674 b/changelog/unreleased/4674 new file mode 100644 index 00000000000..7a20f460059 --- /dev/null +++ b/changelog/unreleased/4674 @@ -0,0 +1,5 @@ +Bugfix: Fix spaces search on Kiteworks accounts + +All matching personal spaces have been included in the spaces search filter for multi-personal accounts. + +https://github.com/owncloud/android/issues/4674 diff --git a/owncloudApp/src/main/java/com/owncloud/android/presentation/spaces/SpacesListFragment.kt b/owncloudApp/src/main/java/com/owncloud/android/presentation/spaces/SpacesListFragment.kt index 370ed0f46f6..9d90e838e0c 100644 --- a/owncloudApp/src/main/java/com/owncloud/android/presentation/spaces/SpacesListFragment.kt +++ b/owncloudApp/src/main/java/com/owncloud/android/presentation/spaces/SpacesListFragment.kt @@ -181,13 +181,19 @@ class SpacesListFragment : collectLatestLifecycleFlow(spacesListViewModel.spacesList) { uiState -> var spacesToListFiltered: List if (uiState.searchFilter != "") { - spacesToListFiltered = - uiState.spaces.filter { it.name.lowercase().contains(uiState.searchFilter.lowercase()) && !it.isPersonal && + val searchFilter = uiState.searchFilter.lowercase() + spacesToListFiltered = if (isMultiPersonal) { + uiState.spaces.filter { it.name.lowercase().contains(searchFilter) && shouldShowDisabledSpace(it) } + } else { + uiState.spaces.filter { it.name.lowercase().contains(searchFilter) && !it.isPersonal && shouldShowDisabledSpace(it) } - val personalSpace = uiState.spaces.find { it.isPersonal } - personalSpace?.let { - spacesToListFiltered = spacesToListFiltered.toMutableList().apply { - add(0, personalSpace) + } + if (!isMultiPersonal) { + val personalSpace = uiState.spaces.find { it.isPersonal } + personalSpace?.let { + spacesToListFiltered = spacesToListFiltered.toMutableList().apply { + add(0, personalSpace) + } } } showOrHideEmptyView(spacesToListFiltered)