mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 19:49:33 +01:00
ConversationCreationActivity - Refactoring
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
This commit is contained in:
parent
cd01c80d71
commit
d32bc74559
@ -19,6 +19,7 @@ import androidx.compose.foundation.layout.Spacer
|
|||||||
import androidx.compose.foundation.layout.fillMaxWidth
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
import androidx.compose.foundation.layout.size
|
||||||
|
import androidx.compose.foundation.layout.width
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
import androidx.compose.material.icons.automirrored.filled.ArrowBack
|
import androidx.compose.material.icons.automirrored.filled.ArrowBack
|
||||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
@ -193,7 +194,7 @@ fun AddParticipants(contactsViewModel: ContactsViewModel) {
|
|||||||
Text(
|
Text(
|
||||||
text = stringResource(id = R.string.nc_participants).uppercase(),
|
text = stringResource(id = R.string.nc_participants).uppercase(),
|
||||||
fontSize = 14.sp,
|
fontSize = 14.sp,
|
||||||
modifier = Modifier.padding(top = 24.dp, start = 16.dp, end = 16.dp)
|
modifier = Modifier.padding(top = 24.dp, start = 16.dp, end = 16.dp, bottom = 16.dp)
|
||||||
)
|
)
|
||||||
|
|
||||||
Row(
|
Row(
|
||||||
@ -217,30 +218,88 @@ fun AddParticipants(contactsViewModel: ContactsViewModel) {
|
|||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun RoomCreationOptions(conversationCreationViewModel: ConversationCreationViewModel) {
|
fun RoomCreationOptions(conversationCreationViewModel: ConversationCreationViewModel) {
|
||||||
val isChecked = conversationCreationViewModel.isGuestsAllowed.value
|
var isGuestsAllowed = conversationCreationViewModel.isGuestsAllowed.value
|
||||||
|
var isConversationAvailableForRegisteredUsers = conversationCreationViewModel
|
||||||
|
.isConversationAvailableForRegisteredUsers.value
|
||||||
|
var isOpenForGuestAppUsers = conversationCreationViewModel.openForGuestAppUsers.value
|
||||||
|
|
||||||
Text(
|
Text(
|
||||||
text = stringResource(id = R.string.nc_visible).uppercase(),
|
text = stringResource(id = R.string.nc_visible).uppercase(),
|
||||||
fontSize = 14.sp,
|
fontSize = 14.sp,
|
||||||
modifier = Modifier.padding(top = 24.dp, start = 16.dp, end = 16.dp)
|
modifier = Modifier.padding(top = 24.dp, start = 16.dp, end = 16.dp)
|
||||||
)
|
)
|
||||||
Row(
|
|
||||||
modifier = Modifier.padding(start = 16.dp, top = 16.dp, end = 16.dp).fillMaxWidth(),
|
|
||||||
verticalAlignment = Alignment
|
|
||||||
.CenterVertically
|
|
||||||
) {
|
|
||||||
Icon(
|
|
||||||
painter = painterResource(id = R.drawable.ic_avatar_link),
|
|
||||||
contentDescription = null,
|
|
||||||
modifier = Modifier.size(24.dp)
|
|
||||||
)
|
|
||||||
Text(text = stringResource(id = R.string.nc_guest_access_allow_title))
|
|
||||||
|
|
||||||
Spacer(modifier = Modifier.weight(1f))
|
ConversationOptions(
|
||||||
Switch(
|
icon = R.drawable.ic_avatar_link,
|
||||||
checked = isChecked,
|
text = R.string.nc_guest_access_allow_title,
|
||||||
onCheckedChange = {
|
switch = {
|
||||||
conversationCreationViewModel.isGuestsAllowed.value = it
|
Switch(
|
||||||
|
checked = isGuestsAllowed,
|
||||||
|
onCheckedChange = {
|
||||||
|
conversationCreationViewModel.isGuestsAllowed.value = it
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
if (isGuestsAllowed) {
|
||||||
|
ConversationOptions(
|
||||||
|
icon = R.drawable.ic_lock_grey600_24px,
|
||||||
|
text = R.string.nc_set_password
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
ConversationOptions(
|
||||||
|
icon = R.drawable.baseline_format_list_bulleted_24,
|
||||||
|
text = R.string.nc_open_conversation_to_registered_users,
|
||||||
|
switch = {
|
||||||
|
Switch(
|
||||||
|
checked = isConversationAvailableForRegisteredUsers,
|
||||||
|
onCheckedChange = {
|
||||||
|
conversationCreationViewModel.isConversationAvailableForRegisteredUsers.value = it
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
if (isConversationAvailableForRegisteredUsers) {
|
||||||
|
ConversationOptions(
|
||||||
|
text = R.string.nc_open_to_guest_app_users,
|
||||||
|
switch = {
|
||||||
|
Switch(
|
||||||
|
checked = isOpenForGuestAppUsers,
|
||||||
|
onCheckedChange = {
|
||||||
|
conversationCreationViewModel.openForGuestAppUsers.value = it
|
||||||
|
}
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun ConversationOptions(icon: Int? = null, text: Int, switch: @Composable (() -> Unit)? = null) {
|
||||||
|
Row(
|
||||||
|
modifier = Modifier
|
||||||
|
.fillMaxWidth()
|
||||||
|
.padding(start = 16.dp, end = 16.dp, bottom = 8.dp),
|
||||||
|
horizontalArrangement = Arrangement.SpaceBetween,
|
||||||
|
verticalAlignment = Alignment.CenterVertically
|
||||||
|
) {
|
||||||
|
if (icon != null) {
|
||||||
|
Icon(
|
||||||
|
painter = painterResource(id = icon),
|
||||||
|
contentDescription = null,
|
||||||
|
modifier = Modifier.size(24.dp)
|
||||||
|
)
|
||||||
|
Spacer(modifier = Modifier.width(16.dp))
|
||||||
|
} else {
|
||||||
|
Spacer(modifier = Modifier.width(40.dp))
|
||||||
|
}
|
||||||
|
Text(
|
||||||
|
text = stringResource(id = text),
|
||||||
|
modifier = Modifier.weight(1f)
|
||||||
|
)
|
||||||
|
switch?.invoke()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -242,6 +242,8 @@ How to translate with transifex:
|
|||||||
<string name="nc_remove_from_favorites">Remove from favorites</string>
|
<string name="nc_remove_from_favorites">Remove from favorites</string>
|
||||||
<string name="nc_create_new_conversation">Create a new conversation</string>
|
<string name="nc_create_new_conversation">Create a new conversation</string>
|
||||||
<string name="nc_join_open_conversations">Join open conversations</string>
|
<string name="nc_join_open_conversations">Join open conversations</string>
|
||||||
|
<string name="nc_open_conversation_to_registered_users">Open conversation to registered users</string>
|
||||||
|
<string name="nc_open_to_guest_app_users">Also open to guest app users</string>
|
||||||
|
|
||||||
<string name="added_to_favorites">Added conversation %1$s to favorites</string>
|
<string name="added_to_favorites">Added conversation %1$s to favorites</string>
|
||||||
<string name="removed_from_favorites">Removed conversation %1$s from favorites</string>
|
<string name="removed_from_favorites">Removed conversation %1$s from favorites</string>
|
||||||
@ -430,6 +432,7 @@ How to translate with transifex:
|
|||||||
<string name="nc_guest_access_allow_title">Allow guests</string>
|
<string name="nc_guest_access_allow_title">Allow guests</string>
|
||||||
<string name="nc_guest_access_allow_summary">Allow guests to share a public link to join this conversation.</string>
|
<string name="nc_guest_access_allow_summary">Allow guests to share a public link to join this conversation.</string>
|
||||||
<string name="nc_guest_access_allow_failed">Cannot enable/disable guest access.</string>
|
<string name="nc_guest_access_allow_failed">Cannot enable/disable guest access.</string>
|
||||||
|
<string name="nc_set_password">Set Password</string>
|
||||||
<string name="nc_guest_access_password_title">Password protection</string>
|
<string name="nc_guest_access_password_title">Password protection</string>
|
||||||
<string name="nc_guest_access_password_summary">Set a password to restrict who can use the public link.</string>
|
<string name="nc_guest_access_password_summary">Set a password to restrict who can use the public link.</string>
|
||||||
<string name="nc_guest_access_password_dialog_title">Guest access password</string>
|
<string name="nc_guest_access_password_dialog_title">Guest access password</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user