Fix italic text is truncated when bubble mode and markdown is enabled.
This commit is contained in:
		
							parent
							
								
									10775ab2f3
								
							
						
					
					
						commit
						a31a9ab521
					
				@ -27,6 +27,7 @@ package im.vector.app.features.html
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import android.content.Context
 | 
					import android.content.Context
 | 
				
			||||||
import android.content.res.Resources
 | 
					import android.content.res.Resources
 | 
				
			||||||
 | 
					import android.graphics.Typeface
 | 
				
			||||||
import android.graphics.drawable.Drawable
 | 
					import android.graphics.drawable.Drawable
 | 
				
			||||||
import android.text.Spannable
 | 
					import android.text.Spannable
 | 
				
			||||||
import androidx.core.text.toSpannable
 | 
					import androidx.core.text.toSpannable
 | 
				
			||||||
@ -40,6 +41,7 @@ import im.vector.app.features.settings.VectorPreferences
 | 
				
			|||||||
import io.noties.markwon.AbstractMarkwonPlugin
 | 
					import io.noties.markwon.AbstractMarkwonPlugin
 | 
				
			||||||
import io.noties.markwon.Markwon
 | 
					import io.noties.markwon.Markwon
 | 
				
			||||||
import io.noties.markwon.MarkwonPlugin
 | 
					import io.noties.markwon.MarkwonPlugin
 | 
				
			||||||
 | 
					import io.noties.markwon.MarkwonSpansFactory
 | 
				
			||||||
import io.noties.markwon.PrecomputedFutureTextSetterCompat
 | 
					import io.noties.markwon.PrecomputedFutureTextSetterCompat
 | 
				
			||||||
import io.noties.markwon.ext.latex.JLatexMathPlugin
 | 
					import io.noties.markwon.ext.latex.JLatexMathPlugin
 | 
				
			||||||
import io.noties.markwon.ext.latex.JLatexMathTheme
 | 
					import io.noties.markwon.ext.latex.JLatexMathTheme
 | 
				
			||||||
@ -50,6 +52,8 @@ import io.noties.markwon.inlineparser.EntityInlineProcessor
 | 
				
			|||||||
import io.noties.markwon.inlineparser.HtmlInlineProcessor
 | 
					import io.noties.markwon.inlineparser.HtmlInlineProcessor
 | 
				
			||||||
import io.noties.markwon.inlineparser.MarkwonInlineParser
 | 
					import io.noties.markwon.inlineparser.MarkwonInlineParser
 | 
				
			||||||
import io.noties.markwon.inlineparser.MarkwonInlineParserPlugin
 | 
					import io.noties.markwon.inlineparser.MarkwonInlineParserPlugin
 | 
				
			||||||
 | 
					import me.gujun.android.span.style.CustomTypefaceSpan
 | 
				
			||||||
 | 
					import org.commonmark.node.Emphasis
 | 
				
			||||||
import org.commonmark.node.Node
 | 
					import org.commonmark.node.Node
 | 
				
			||||||
import org.commonmark.parser.Parser
 | 
					import org.commonmark.parser.Parser
 | 
				
			||||||
import org.matrix.android.sdk.api.MatrixUrls.isMxcUrl
 | 
					import org.matrix.android.sdk.api.MatrixUrls.isMxcUrl
 | 
				
			||||||
@ -94,6 +98,12 @@ class EventHtmlRenderer @Inject constructor(
 | 
				
			|||||||
        // It needs to be in this specific format: https://noties.io/Markwon/docs/v4/ext-latex
 | 
					        // It needs to be in this specific format: https://noties.io/Markwon/docs/v4/ext-latex
 | 
				
			||||||
        builder
 | 
					        builder
 | 
				
			||||||
                .usePlugin(object : AbstractMarkwonPlugin() {
 | 
					                .usePlugin(object : AbstractMarkwonPlugin() {
 | 
				
			||||||
 | 
					                    override fun configureSpansFactory(builder: MarkwonSpansFactory.Builder) {
 | 
				
			||||||
 | 
					                        builder.setFactory(
 | 
				
			||||||
 | 
					                                Emphasis::class.java
 | 
				
			||||||
 | 
					                        ) { _, _ -> CustomTypefaceSpan(Typeface.create(Typeface.DEFAULT, Typeface.ITALIC)) }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    override fun processMarkdown(markdown: String): String {
 | 
					                    override fun processMarkdown(markdown: String): String {
 | 
				
			||||||
                        return markdown
 | 
					                        return markdown
 | 
				
			||||||
                                .replace(Regex("""<span\s+data-mx-maths="([^"]*)">.*?</span>""")) { matchResult ->
 | 
					                                .replace(Regex("""<span\s+data-mx-maths="([^"]*)">.*?</span>""")) { matchResult ->
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user