common: fix theming for CommentEntry

This commit is contained in:
Harsh Shandilya 2021-12-31 01:14:39 +05:30
parent 41e4fe284a
commit 3f3da0ab18
No known key found for this signature in database
GPG key ID: 366D7BBAD1031E80

View file

@ -7,12 +7,17 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentHeight
import androidx.compose.material.Divider import androidx.compose.material.Divider
import androidx.compose.material.LocalContentColor
import androidx.compose.material.LocalTextStyle
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import com.halilibo.richtext.markdown.Markdown import com.halilibo.richtext.markdown.Markdown
import com.halilibo.richtext.ui.RichTextScope
import com.halilibo.richtext.ui.material.MaterialRichText import com.halilibo.richtext.ui.material.MaterialRichText
import dev.msfjarvis.claw.common.posts.PostDetails import dev.msfjarvis.claw.common.posts.PostDetails
import dev.msfjarvis.claw.common.posts.SubmitterName import dev.msfjarvis.claw.common.posts.SubmitterName
@ -20,6 +25,17 @@ import dev.msfjarvis.claw.common.posts.toDbModel
import dev.msfjarvis.claw.model.Comment import dev.msfjarvis.claw.model.Comment
import dev.msfjarvis.claw.model.LobstersPostDetails import dev.msfjarvis.claw.model.LobstersPostDetails
@Composable
fun ThemedRichText(
modifier: Modifier = Modifier,
content: @Composable RichTextScope.() -> Unit,
) {
CompositionLocalProvider(
LocalTextStyle provides MaterialTheme.typography.bodyLarge,
LocalContentColor provides MaterialTheme.colorScheme.onBackground,
) { MaterialRichText(modifier) { content() } }
}
@Composable @Composable
fun CommentsHeader( fun CommentsHeader(
postDetails: LobstersPostDetails, postDetails: LobstersPostDetails,
@ -33,7 +49,7 @@ fun CommentsHeader(
PostDetails( PostDetails(
post = postDetails.toDbModel(), post = postDetails.toDbModel(),
) )
MaterialRichText { Markdown(htmlConverter.convertHTMLToMarkdown(postDetails.description)) } ThemedRichText { Markdown(htmlConverter.convertHTMLToMarkdown(postDetails.description)) }
} }
} }
} }
@ -59,7 +75,7 @@ fun CommentEntry(
avatarUrl = "https://lobste.rs/${comment.user.avatarUrl}", avatarUrl = "https://lobste.rs/${comment.user.avatarUrl}",
contentDescription = "User avatar for ${comment.user.username}", contentDescription = "User avatar for ${comment.user.username}",
) )
MaterialRichText(modifier = Modifier.padding(top = 8.dp)) { ThemedRichText(modifier = Modifier.padding(top = 8.dp)) {
Markdown(htmlConverter.convertHTMLToMarkdown(comment.comment)) Markdown(htmlConverter.convertHTMLToMarkdown(comment.comment))
} }
} }