Hiding the top bar when search is active

This commit is contained in:
Maxime NATUREL 2023-03-16 10:19:32 +01:00 committed by Florian Renaud
parent e63cb7373d
commit 181a8877d4
2 changed files with 19 additions and 21 deletions

View file

@ -19,32 +19,28 @@ package io.element.android.features.createroom.impl.addpeople
import androidx.compose.ui.tooling.preview.PreviewParameterProvider import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import io.element.android.features.selectusers.api.aSelectUsersState import io.element.android.features.selectusers.api.aSelectUsersState
import io.element.android.features.selectusers.api.aSetOfSelectedUsers import io.element.android.features.selectusers.api.aSetOfSelectedUsers
import io.element.android.libraries.designsystem.components.avatar.AvatarData
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.ui.model.MatrixUser
open class AddPeopleStateProvider : PreviewParameterProvider<AddPeopleState> { open class AddPeopleStateProvider : PreviewParameterProvider<AddPeopleState> {
override val values: Sequence<AddPeopleState> override val values: Sequence<AddPeopleState>
get() = sequenceOf( get() = sequenceOf(
aAddPeopleState(), aAddPeopleState(),
aAddPeopleState().copy( aAddPeopleState().copy(
selectUsersState = aSelectUsersState().copy(selectedUsers = aSetOfSelectedUsers()) selectUsersState = aSelectUsersState().copy(
selectedUsers = aSetOfSelectedUsers(),
isMultiSelectionEnabled = true,
)
), ),
aAddPeopleState(isSearchActive = true), aAddPeopleState().copy(
aAddPeopleState(isSearchActive = true).copy( selectUsersState = aSelectUsersState().copy(
selectUsersState = aSelectUsersState().copy(selectedUsers = aSetOfSelectedUsers()) selectedUsers = aSetOfSelectedUsers(),
isSearchActive = true,
isMultiSelectionEnabled = true,
)
) )
) )
} }
fun aAddPeopleState(isSearchActive: Boolean = false) = AddPeopleState( fun aAddPeopleState() = AddPeopleState(
selectUsersState = aSelectUsersState().copy( selectUsersState = aSelectUsersState(),
isMultiSelectionEnabled = true,
isSearchActive = isSearchActive,
),
eventSink = {} eventSink = {}
) )
fun aMatrixUser(userName: String): MatrixUser {
return MatrixUser(id = UserId("@id"), username = userName, avatarData = AvatarData("@id", "U"))
}

View file

@ -51,11 +51,13 @@ fun AddPeopleView(
Scaffold( Scaffold(
topBar = { topBar = {
AddPeopleViewTopBar( if (!state.selectUsersState.isSearchActive) {
hasSelectedUsers = state.selectUsersState.selectedUsers.isNotEmpty(), AddPeopleViewTopBar(
onBackPressed = onBackPressed, hasSelectedUsers = state.selectUsersState.selectedUsers.isNotEmpty(),
onNextPressed = onNextPressed, onBackPressed = onBackPressed,
) onNextPressed = onNextPressed,
)
}
} }
) { padding -> ) { padding ->
Column( Column(