From 29d529358737e4b7270c3e050397315404a8c8b5 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Tue, 22 Apr 2025 16:18:45 +0200 Subject: [PATCH] Add button to add participants Signed-off-by: sowjanyakch --- .../talk/contacts/components/AppBar.kt | 48 ++++++++++++------- .../contacts/components/SearchComponent.kt | 3 +- 2 files changed, 33 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/contacts/components/AppBar.kt b/app/src/main/java/com/nextcloud/talk/contacts/components/AppBar.kt index aa161023d..f6b602063 100644 --- a/app/src/main/java/com/nextcloud/talk/contacts/components/AppBar.kt +++ b/app/src/main/java/com/nextcloud/talk/contacts/components/AppBar.kt @@ -20,8 +20,10 @@ import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Icon import androidx.compose.material3.IconButton import androidx.compose.material3.Text +import androidx.compose.material3.TextButton import androidx.compose.material3.TopAppBar import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource @@ -54,23 +56,25 @@ fun AppBar( } }, actions = { - IconButton(onClick = onEnableSearch) { - Icon(Icons.Filled.Search, contentDescription = stringResource(R.string.search_icon)) - } - if (isAddParticipants) { - Text( - text = stringResource(id = R.string.nc_contacts_done), - modifier = Modifier.clickable { - val resultIntent = Intent().apply { - putParcelableArrayListExtra( - "selectedParticipants", - ArrayList(autocompleteUsers) - ) + if (!isSearchActive) { + IconButton(onClick = onEnableSearch) { + Icon(Icons.Filled.Search, contentDescription = stringResource(R.string.search_icon)) + } + if (isAddParticipants) { + Text( + text = stringResource(id = R.string.nc_contacts_done), + modifier = Modifier.clickable { + val resultIntent = Intent().apply { + putParcelableArrayListExtra( + "selectedParticipants", + ArrayList(autocompleteUsers) + ) + } + (context as? Activity)?.setResult(Activity.RESULT_OK, resultIntent) + (context as? Activity)?.finish() } - (context as? Activity)?.setResult(Activity.RESULT_OK, resultIntent) - (context as? Activity)?.finish() - } - ) + ) + } } } ) @@ -84,6 +88,18 @@ fun AppBar( }, onDisableSearch = onDisableSearch ) + + if (searchQuery.isNotEmpty() && isAddParticipants) { + TextButton( + modifier = Modifier.align(Alignment.CenterVertically), + onClick = { + onDisableSearch() + onUpdateSearchQuery("") + } + ) { + Text(text = "Add") + } + } } } } diff --git a/app/src/main/java/com/nextcloud/talk/contacts/components/SearchComponent.kt b/app/src/main/java/com/nextcloud/talk/contacts/components/SearchComponent.kt index 5a353939d..08935ace9 100644 --- a/app/src/main/java/com/nextcloud/talk/contacts/components/SearchComponent.kt +++ b/app/src/main/java/com/nextcloud/talk/contacts/components/SearchComponent.kt @@ -36,11 +36,10 @@ import com.nextcloud.talk.R @Composable fun SearchComponent(text: String, onTextChange: (String) -> Unit, onDisableSearch: () -> Unit) { val keyboardController = LocalSoftwareKeyboardController.current - TextField( modifier = Modifier .background(MaterialTheme.colorScheme.background) - .fillMaxWidth() + .fillMaxWidth(0.85f) .height(60.dp), value = text, onValueChange = { onTextChange(it) },