From 387d2e12bb76fc0173fd5a7a56f0f256e213b53d Mon Sep 17 00:00:00 2001 From: SpiritCroc Date: Tue, 21 Jun 2022 21:30:18 +0200 Subject: [PATCH] Inline images: Use alt text in room previews and notifications Change-Id: I6649794d31582c3f5e6ab3e151a866663d4645ee --- .../java/org/matrix/android/sdk/api/util/ContentUtils.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/util/ContentUtils.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/util/ContentUtils.kt index e453cb2df5..84c8bb4fb1 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/util/ContentUtils.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/util/ContentUtils.kt @@ -15,6 +15,7 @@ */ package org.matrix.android.sdk.api.util +import org.matrix.android.sdk.api.extensions.tryOrNull import org.matrix.android.sdk.internal.util.unescapeHtml object ContentUtils { @@ -53,6 +54,13 @@ object ContentUtils { // can capture the spoiler reason for better formatting? ex. { reason = it.value; ">"} return formattedBody.replace("(?<=".toRegex(), ">") .replace("(?<=).+?(?=)".toRegex()) { SPOILER_CHAR.repeat(it.value.length) } + // Replace inline images with alt text + .replace(Regex("""]*)>""")) { matchResult -> + tryOrNull { + val alt = Regex("""\s+alt="([^"]*)"""").find(matchResult.groupValues[1]) + alt?.groupValues?.get(1) + } ?: "" + } .unescapeHtml() }