Optimize showing ref message

pull/178/head
M66B 5 years ago
parent 62bc889b12
commit a1aff11987

@ -4459,8 +4459,9 @@ public class FragmentCompose extends FragmentBase {
Spanned spannedRef = null; Spanned spannedRef = null;
if (!ref.isEmpty()) { if (!ref.isEmpty()) {
Document quote = HtmlHelper.sanitizeCompose(context, ref.outerHtml(), show_images); Document dref = JsoupEx.parse(ref.outerHtml());
Spanned spannedQuote = HtmlHelper.fromHtml(quote.html(), Document quote = HtmlHelper.sanitizeView(context, dref, show_images);
SpannableStringBuilder ssb = HtmlHelper.fromDocument(context, quote,
new Html.ImageGetter() { new Html.ImageGetter() {
@Override @Override
public Drawable getDrawable(String source) { public Drawable getDrawable(String source) {
@ -4469,18 +4470,17 @@ public class FragmentCompose extends FragmentBase {
}, },
null); null);
SpannableStringBuilder refBuilder = new SpannableStringBuilder(spannedQuote); QuoteSpan[] refSpans = ssb.getSpans(0, ssb.length(), QuoteSpan.class);
QuoteSpan[] refSpans = refBuilder.getSpans(0, refBuilder.length(), QuoteSpan.class);
for (QuoteSpan quoteSpan : refSpans) { for (QuoteSpan quoteSpan : refSpans) {
refBuilder.setSpan( ssb.setSpan(
new StyledQuoteSpan(context, colorPrimary), new StyledQuoteSpan(context, colorPrimary),
refBuilder.getSpanStart(quoteSpan), ssb.getSpanStart(quoteSpan),
refBuilder.getSpanEnd(quoteSpan), ssb.getSpanEnd(quoteSpan),
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
refBuilder.removeSpan(quoteSpan); ssb.removeSpan(quoteSpan);
} }
spannedRef = refBuilder; spannedRef = ssb;
} }
args.putBoolean("ref_has_images", spannedRef != null && args.putBoolean("ref_has_images", spannedRef != null &&

Loading…
Cancel
Save