Merge pull request #2781 from mstrofnone/fix/selectable-error-messages

fix(desktop): make error messages selectable so users can copy them
This commit is contained in:
Vitor Pamplona
2026-05-08 08:12:49 -04:00
committed by GitHub
4 changed files with 52 additions and 26 deletions
@@ -31,6 +31,7 @@ import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material3.Button
import androidx.compose.material3.Card
import androidx.compose.material3.MaterialTheme
@@ -251,20 +252,24 @@ fun ComposeNoteDialog(
errorMessage?.let { error ->
Spacer(Modifier.height(8.dp))
Text(
error,
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
SelectionContainer {
Text(
error,
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
}
}
uploadState.error?.let { error ->
Spacer(Modifier.height(4.dp))
Text(
"Upload error: $error",
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
SelectionContainer {
Text(
"Upload error: $error",
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
}
}
Spacer(Modifier.height(8.dp))
@@ -22,6 +22,7 @@ package com.vitorpamplona.amethyst.desktop.ui.auth
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
import androidx.compose.material3.IconButton
@@ -85,7 +86,11 @@ fun KeyInputField(
isError = errorMessage != null,
supportingText =
errorMessage?.let {
{ Text(it, color = MaterialTheme.colorScheme.error) }
{
SelectionContainer {
Text(it, color = MaterialTheme.colorScheme.error)
}
}
},
)
}
@@ -30,6 +30,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material3.Button
import androidx.compose.material3.Card
import androidx.compose.material3.CardDefaults
@@ -254,11 +255,13 @@ private fun NostrConnectContent(
val clipboardManager = LocalClipboard.current
if (errorMessage != null) {
Text(
errorMessage!!,
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
SelectionContainer {
Text(
errorMessage!!,
style = MaterialTheme.typography.bodySmall,
color = MaterialTheme.colorScheme.error,
)
}
Spacer(Modifier.height(12.dp))
Button(onClick = {
errorMessage = null