fix(common): use a custom link style for legibility

This commit is contained in:
Harsh Shandilya 2022-09-30 02:41:52 +05:30
parent e483ceea5f
commit 1ba9cefda6
No known key found for this signature in database

View file

@ -6,22 +6,34 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextDecoration
import com.halilibo.richtext.markdown.Markdown
import com.halilibo.richtext.ui.RichText
import com.halilibo.richtext.ui.RichTextStyle
import com.halilibo.richtext.ui.string.RichTextStringStyle
@Composable
fun ThemedRichText(
text: String,
modifier: Modifier = Modifier,
) {
val linkStyle =
SpanStyle(
background = MaterialTheme.colorScheme.surfaceVariant,
color = MaterialTheme.colorScheme.onSurface,
fontWeight = FontWeight.Bold,
textDecoration = TextDecoration.Underline,
)
val stringStyle = RichTextStringStyle.Default.copy(linkStyle = linkStyle)
CompositionLocalProvider(
LocalTextStyle provides MaterialTheme.typography.bodyLarge,
LocalContentColor provides MaterialTheme.colorScheme.onBackground,
) {
RichText(
modifier = modifier,
style = RichTextStyle.Default,
style = RichTextStyle.Default.copy(stringStyle = stringStyle),
) {
Markdown(text)
}