diff --git a/app/src/main/java/com/greenart7c3/nostrsigner/ui/components/EventSection.kt b/app/src/main/java/com/greenart7c3/nostrsigner/ui/components/EventSection.kt index 69b7eaba..197b3304 100644 --- a/app/src/main/java/com/greenart7c3/nostrsigner/ui/components/EventSection.kt +++ b/app/src/main/java/com/greenart7c3/nostrsigner/ui/components/EventSection.kt @@ -13,6 +13,10 @@ import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource @@ -29,7 +33,9 @@ fun EventSection( displayValue: String, onCopy: () -> Unit, padding: Dp = 16.dp, + showFullContent: Boolean = false, ) { + var expanded by remember { mutableStateOf(showFullContent) } Row( modifier = Modifier .fillMaxWidth() @@ -45,13 +51,15 @@ fun EventSection( color = MaterialTheme.colorScheme.onSurface, ) Text( - modifier = Modifier.padding(top = 12.dp), + modifier = Modifier + .padding(top = 12.dp) + .clickable { expanded = !expanded }, text = displayValue, style = MaterialTheme.typography.bodyMedium.copy( lineHeight = 24.sp, ), - maxLines = 1, - overflow = TextOverflow.Ellipsis, + maxLines = if (expanded) Int.MAX_VALUE else 1, + overflow = if (expanded) TextOverflow.Clip else TextOverflow.Ellipsis, fontWeight = FontWeight.Bold, ) }