feat: tap to toggle collapse comments (#232); closes #197

This commit is contained in:
Diego Beraldin 2023-12-06 19:30:30 +01:00 committed by GitHub
parent b6b3468847
commit d153083819
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 1 deletions

View File

@ -21,6 +21,7 @@ import com.github.diegoberaldin.raccoonforlemmy.core.appearance.data.VoteFormat
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.di.getThemeRepository
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.IconSize
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.Spacing
import com.github.diegoberaldin.raccoonforlemmy.core.utils.compose.onClick
import com.github.diegoberaldin.raccoonforlemmy.core.utils.toLocalDp
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.CommentModel
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.UserModel
@ -34,6 +35,7 @@ fun CollapsedCommentCard(
autoLoadImages: Boolean = true,
actionButtonsActive: Boolean = true,
options: List<Option> = emptyList(),
onClick: (() -> Unit)? = null,
onOpenCreator: ((UserModel) -> Unit)? = null,
onUpVote: (() -> Unit)? = null,
onDownVote: (() -> Unit)? = null,
@ -52,7 +54,9 @@ fun CollapsedCommentCard(
endColor = MaterialTheme.colorScheme.background,
)
Column(
modifier = modifier
modifier = modifier.onClick(
onClick = onClick ?: {},
)
) {
Box(
modifier = Modifier.padding(

View File

@ -666,6 +666,13 @@ class PostDetailScreen(
)
)
},
onClick = rememberCallback(model) {
model.reduce(
PostDetailMviModel.Intent.ToggleExpandComment(
comment.id
)
)
},
onDoubleClick = if (!uiState.doubleTapActionEnabled) {
null
} else {
@ -878,6 +885,14 @@ class PostDetailScreen(
comment = comment,
actionButtonsActive = uiState.isLogged,
onToggleExpanded = rememberCallback(model) {
model.reduce(
PostDetailMviModel.Intent.ToggleExpandComment(
comment.id
)
)
},
onClick = rememberCallback(model) {
model.reduce(
PostDetailMviModel.Intent.ToggleExpandComment(
comment.id