create room : remove RoomAccess.Invite as we are not displaying it.

This commit is contained in:
ganfra 2024-10-25 18:36:08 +02:00
parent f6938fa737
commit 4582acd536
4 changed files with 12 additions and 20 deletions

View file

@ -14,15 +14,12 @@ import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.consumeWindowInsets import androidx.compose.foundation.layout.consumeWindowInsets
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.imePadding import androidx.compose.foundation.layout.imePadding
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.selection.selectableGroup import androidx.compose.foundation.selection.selectableGroup
import androidx.compose.foundation.text.BasicTextField
import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
@ -35,7 +32,6 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalFocusManager import androidx.compose.ui.platform.LocalFocusManager
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.input.KeyboardCapitalization import androidx.compose.ui.text.input.KeyboardCapitalization
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import io.element.android.compound.theme.ElementTheme import io.element.android.compound.theme.ElementTheme
@ -133,7 +129,10 @@ fun ConfigureRoomView(
) )
if (state.config.roomVisibility is RoomVisibilityState.Public) { if (state.config.roomVisibility is RoomVisibilityState.Public) {
RoomAccessOptions( RoomAccessOptions(
selected = state.config.roomVisibility.roomAccess, selected = when (state.config.roomVisibility.roomAccess) {
RoomAccess.Anyone -> RoomAccessItem.Anyone
RoomAccess.Knocking -> RoomAccessItem.AskToJoin
},
onOptionClick = { onOptionClick = {
focusManager.clearFocus() focusManager.clearFocus()
state.eventSink(ConfigureRoomEvents.RoomAccessChanged(it)) state.eventSink(ConfigureRoomEvents.RoomAccessChanged(it))
@ -290,7 +289,7 @@ private fun RoomVisibilityOptions(
@Composable @Composable
private fun RoomAccessOptions( private fun RoomAccessOptions(
selected: RoomAccess, selected: RoomAccessItem,
onOptionClick: (RoomAccessItem) -> Unit, onOptionClick: (RoomAccessItem) -> Unit,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
) { ) {
@ -302,10 +301,7 @@ private fun RoomAccessOptions(
RoomAccessItem.entries.forEach { item -> RoomAccessItem.entries.forEach { item ->
RoomAccessOption( RoomAccessOption(
roomAccessItem = item, roomAccessItem = item,
isSelected = when (item) { isSelected = item == selected,
RoomAccessItem.Anyone -> selected == RoomAccess.Anyone
RoomAccessItem.AskToJoin -> selected == RoomAccess.Knocking
},
onOptionClick = onOptionClick, onOptionClick = onOptionClick,
) )
} }
@ -317,7 +313,7 @@ private fun RoomAddress(
address: RoomAddress, address: RoomAddress,
onAddressChange: (String) -> Unit, onAddressChange: (String) -> Unit,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
){ ) {
Column( Column(
modifier = modifier, modifier = modifier,
verticalArrangement = Arrangement.spacedBy(8.dp), verticalArrangement = Arrangement.spacedBy(8.dp),
@ -331,7 +327,7 @@ private fun RoomAddress(
TextField( TextField(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
value = when(address) { value = when (address) {
is RoomAddress.AutoFilled -> address.address is RoomAddress.AutoFilled -> address.address
is RoomAddress.Edited -> address.address is RoomAddress.Edited -> address.address
}, },

View file

@ -8,5 +8,5 @@
package io.element.android.features.createroom.impl.configureroom package io.element.android.features.createroom.impl.configureroom
enum class RoomAccess { enum class RoomAccess {
Anyone, Knocking, Invite Anyone, Knocking
} }

View file

@ -21,6 +21,6 @@ enum class RoomAccessItem(
AskToJoin( AskToJoin(
title = CommonStrings.screen_create_room_access_section_knocking_option_title, title = CommonStrings.screen_create_room_access_section_knocking_option_title,
description = CommonStrings.screen_create_room_access_section_knocking_option_description, description = CommonStrings.screen_create_room_access_section_knocking_option_description,
) ),
} }

View file

@ -8,14 +8,10 @@
package io.element.android.features.createroom.impl.configureroom package io.element.android.features.createroom.impl.configureroom
sealed interface RoomVisibilityState { sealed interface RoomVisibilityState {
val roomAccess: RoomAccess data object Private : RoomVisibilityState
data object Private : RoomVisibilityState {
override val roomAccess: RoomAccess = RoomAccess.Invite
}
data class Public( data class Public(
val roomAddress: RoomAddress, val roomAddress: RoomAddress,
override val roomAccess: RoomAccess val roomAccess: RoomAccess
) : RoomVisibilityState ) : RoomVisibilityState
} }