diff --git a/common/src/main/kotlin/dev/msfjarvis/claw/common/ui/HTMLText.kt b/common/src/main/kotlin/dev/msfjarvis/claw/common/ui/HTMLText.kt index ed5bb928..0202532a 100644 --- a/common/src/main/kotlin/dev/msfjarvis/claw/common/ui/HTMLText.kt +++ b/common/src/main/kotlin/dev/msfjarvis/claw/common/ui/HTMLText.kt @@ -10,6 +10,7 @@ import android.graphics.Typeface import android.text.Spanned import android.text.style.BulletSpan import android.text.style.ForegroundColorSpan +import android.text.style.QuoteSpan import android.text.style.RelativeSizeSpan import android.text.style.StrikethroughSpan import android.text.style.StyleSpan @@ -103,6 +104,7 @@ private fun String.asHTML( is StrikethroughSpan -> span.spanStyle() is SuperscriptSpan -> span.spanStyle() is SubscriptSpan -> span.spanStyle() + is QuoteSpan -> span.spanStyle() is URLSpan -> { addStringAnnotation(tag = URL_TAG, annotation = span.url, start = start, end = end) span.spanStyle() @@ -137,6 +139,9 @@ private fun StrikethroughSpan.spanStyle(): SpanStyle = private fun RelativeSizeSpan.spanStyle(fontSize: TextUnit): SpanStyle = SpanStyle(fontSize = (fontSize.value * sizeChange).sp) +@Suppress("UnusedReceiverParameter") +private fun QuoteSpan.spanStyle(): SpanStyle = SpanStyle(fontStyle = FontStyle.Italic) + private fun StyleSpan.spanStyle(): SpanStyle? = when (style) { Typeface.BOLD -> SpanStyle(fontWeight = FontWeight.Bold) @@ -199,6 +204,7 @@ fun HTMLTextPreview() {

This is a paragraph body

This is a code block
       

This is an inline code block

+

This is a blockquote

This is a link

Image

"""