Fixed transfer URI suggestions handling
This commit is contained in:
@ -1214,33 +1214,33 @@ class MainActivity : ComponentActivity() {
|
|||||||
modifier = Modifier.padding(16.dp),
|
modifier = Modifier.padding(16.dp),
|
||||||
color = LocalCustomColors.current.primary,
|
color = LocalCustomColors.current.primary,
|
||||||
)
|
)
|
||||||
var uri by remember { mutableStateOf("") }
|
var transferUri by remember { mutableStateOf("") }
|
||||||
val suggestions by remember { contactNames }
|
val suggestions by remember { contactNames }
|
||||||
var filteredSuggestions by remember { mutableStateOf(suggestions) }
|
var filteredSuggestions by remember { mutableStateOf(suggestions) }
|
||||||
var showSuggestions by remember { mutableStateOf(false) }
|
var showSuggestions by remember { mutableStateOf(false) }
|
||||||
val focusRequester = remember { FocusRequester() }
|
val focusRequester = remember { FocusRequester() }
|
||||||
val lazyListState = rememberLazyListState()
|
val lazyListState = rememberLazyListState()
|
||||||
OutlinedTextField(
|
OutlinedTextField(
|
||||||
value = uri,
|
value = transferUri,
|
||||||
singleLine = true,
|
singleLine = true,
|
||||||
onValueChange = {
|
onValueChange = {
|
||||||
uri = it
|
transferUri = it
|
||||||
showSuggestions = uri.isNotEmpty()
|
showSuggestions = transferUri.isNotEmpty()
|
||||||
filteredSuggestions = if (uri.isEmpty())
|
filteredSuggestions = if (transferUri.isEmpty())
|
||||||
suggestions
|
suggestions
|
||||||
else
|
else
|
||||||
suggestions.filter { suggestion ->
|
suggestions.filter { suggestion ->
|
||||||
uri.length > 2 && suggestion.startsWith(uri,
|
transferUri.length > 2 &&
|
||||||
ignoreCase = true)
|
suggestion.startsWith(transferUri, ignoreCase = true)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trailingIcon = {
|
trailingIcon = {
|
||||||
if (uri.isNotEmpty())
|
if (transferUri.isNotEmpty())
|
||||||
Icon(
|
Icon(
|
||||||
Icons.Outlined.Clear,
|
Icons.Outlined.Clear,
|
||||||
contentDescription = null,
|
contentDescription = null,
|
||||||
modifier = Modifier.clickable {
|
modifier = Modifier.clickable {
|
||||||
uri = ""
|
transferUri = ""
|
||||||
showSuggestions = false
|
showSuggestions = false
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@ -1303,7 +1303,7 @@ class MainActivity : ComponentActivity() {
|
|||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
.clickable {
|
.clickable {
|
||||||
callUri.value = suggestion
|
transferUri = suggestion
|
||||||
showSuggestions = false
|
showSuggestions = false
|
||||||
}
|
}
|
||||||
.padding(12.dp)
|
.padding(12.dp)
|
||||||
@ -1365,7 +1365,7 @@ class MainActivity : ComponentActivity() {
|
|||||||
}
|
}
|
||||||
TextButton(
|
TextButton(
|
||||||
onClick = {
|
onClick = {
|
||||||
var uriText = uri.trim()
|
var uriText = transferUri.trim()
|
||||||
if (uriText.isNotEmpty()) {
|
if (uriText.isNotEmpty()) {
|
||||||
val uris = Contact.contactUris(uriText)
|
val uris = Contact.contactUris(uriText)
|
||||||
if (uris.size > 1) {
|
if (uris.size > 1) {
|
||||||
|
|||||||
Reference in New Issue
Block a user