From c92d4982c6ecdd5e9ed521f72e68db852fcb47c6 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 16 Nov 2023 22:54:16 +0100 Subject: [PATCH] Using different regex for URL detection to ensure it starts by http(s) and thus prevents ActivityNotFound exception --- .../org/linphone/ui/main/chat/model/ChatMessageModel.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/main/chat/model/ChatMessageModel.kt b/app/src/main/java/org/linphone/ui/main/chat/model/ChatMessageModel.kt index 8bca7d575..5698736a5 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/model/ChatMessageModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/model/ChatMessageModel.kt @@ -22,7 +22,6 @@ package org.linphone.ui.main.chat.model import android.text.Spannable import android.text.SpannableStringBuilder import android.text.Spanned -import android.util.Patterns import androidx.annotation.UiThread import androidx.annotation.WorkerThread import androidx.lifecycle.MutableLiveData @@ -77,6 +76,7 @@ class ChatMessageModel @WorkerThread constructor( private const val TAG = "[Chat Message Model]" private const val SIP_URI_REGEXP = "(?:)?" + private const val HTTP_LINK_REGEXP = "https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)" private const val MENTION_REGEXP = "@(?:[A-Za-z0-9._-]+)" } @@ -465,7 +465,9 @@ class ChatMessageModel @WorkerThread constructor( } ) .add( - Patterns.WEB_URL, + Pattern.compile( + HTTP_LINK_REGEXP + ), object : SpannableClickedListener { override fun onSpanClicked(text: String) { Log.i("$TAG Clicked on web URL: $text")