feat: selectable handles (#594)

This commit is contained in:
Diego Beraldin 2024-03-13 13:44:34 +01:00 committed by GitHub
parent 97afbe8b2e
commit 0e76ed53ae
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 6 deletions

View File

@ -109,6 +109,7 @@ import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.CommentModel
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.PostModel import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.PostModel
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.containsId import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.containsId
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.readableHandle import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.readableHandle
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.readableName
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.toIcon import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.toIcon
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.toInt import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.toInt
import com.github.diegoberaldin.raccoonforlemmy.unit.ban.BanUserScreen import com.github.diegoberaldin.raccoonforlemmy.unit.ban.BanUserScreen
@ -235,7 +236,7 @@ class CommunityDetailScreen(
title = { title = {
Text( Text(
modifier = Modifier.padding(horizontal = Spacing.s), modifier = Modifier.padding(horizontal = Spacing.s),
text = uiState.community.name, text = uiState.community.readableName(uiState.preferNicknames),
maxLines = 1, maxLines = 1,
overflow = TextOverflow.Ellipsis, overflow = TextOverflow.Ellipsis,
) )

View File

@ -11,6 +11,7 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.LazyRow
import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.AlternateEmail import androidx.compose.material.icons.filled.AlternateEmail
@ -109,11 +110,13 @@ class CommunityInfoScreen(
Column( Column(
verticalArrangement = Arrangement.spacedBy(Spacing.xs), verticalArrangement = Arrangement.spacedBy(Spacing.xs),
) { ) {
SelectionContainer {
DetailInfoItem( DetailInfoItem(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
icon = Icons.Default.AlternateEmail, icon = Icons.Default.AlternateEmail,
title = uiState.community.readableHandle, title = uiState.community.readableHandle,
) )
}
DetailInfoItem( DetailInfoItem(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
icon = Icons.Default.Cake, icon = Icons.Default.Cake,

View File

@ -14,6 +14,7 @@ import androidx.compose.foundation.lazy.LazyRow
import androidx.compose.foundation.text.selection.SelectionContainer import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.AlternateEmail
import androidx.compose.material.icons.filled.Cake import androidx.compose.material.icons.filled.Cake
import androidx.compose.material.icons.filled.Padding import androidx.compose.material.icons.filled.Padding
import androidx.compose.material.icons.filled.Shield import androidx.compose.material.icons.filled.Shield
@ -108,6 +109,13 @@ class UserInfoScreen(
Column( Column(
verticalArrangement = Arrangement.spacedBy(Spacing.xs), verticalArrangement = Arrangement.spacedBy(Spacing.xs),
) { ) {
SelectionContainer {
DetailInfoItem(
modifier = Modifier.fillMaxWidth(),
icon = Icons.Default.AlternateEmail,
title = uiState.user.readableHandle,
)
}
DetailInfoItem( DetailInfoItem(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
icon = Icons.Default.Cake, icon = Icons.Default.Cake,