diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationItem.java b/src/main/java/org/thoughtcrime/securesms/ConversationItem.java index 7e6ef2f69..a228ad1db 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationItem.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationItem.java @@ -432,7 +432,7 @@ public class ConversationItem extends BaseConversationItem // Set accessibility delegate for TalkBack to expose links as custom actions if (Util.isTouchExplorationEnabled(context) && batchSelected.isEmpty()) { - bodyText.setAccessibilityDelegate(new LinkAccessibilityDelegate()); + bodyText.setAccessibilityDelegate(new LinkAccessibilityDelegate(context)); } else { bodyText.setAccessibilityDelegate(null); } diff --git a/src/main/java/org/thoughtcrime/securesms/util/LinkAccessibilityDelegate.java b/src/main/java/org/thoughtcrime/securesms/util/LinkAccessibilityDelegate.java index 8844bceea..2a6d135a3 100644 --- a/src/main/java/org/thoughtcrime/securesms/util/LinkAccessibilityDelegate.java +++ b/src/main/java/org/thoughtcrime/securesms/util/LinkAccessibilityDelegate.java @@ -1,5 +1,6 @@ package org.thoughtcrime.securesms.util; +import android.content.Context; import android.os.Bundle; import android.text.Spanned; import android.view.View; @@ -8,6 +9,8 @@ import android.widget.TextView; import androidx.core.view.accessibility.AccessibilityNodeInfoCompat; +import org.thoughtcrime.securesms.R; + import java.util.HashMap; import java.util.Map; @@ -22,6 +25,12 @@ public class LinkAccessibilityDelegate extends View.AccessibilityDelegate { // Map to store span references for each action ID private final Map actionSpanMap = new HashMap<>(); + + private final Context context; + + public LinkAccessibilityDelegate(Context context) { + this.context = context; + } @Override public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) { @@ -52,7 +61,7 @@ public class LinkAccessibilityDelegate extends View.AccessibilityDelegate { if (start >= 0 && end > start && end <= spanned.length()) { String linkText = spanned.subSequence(start, end).toString(); - String label = "Open link: " + linkText; + String label = context.getString(R.string.accessibility_link_action, linkText); // Create a unique action ID for each link final int actionId = LINK_ACTION_BASE_ID + i; diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index c12efdcab..6570db937 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -1179,6 +1179,9 @@ Tap here to receive messages while Delta Chat is in the background. You already allowed Delta Chat to receive messages in the background.\n\nIf messages still do not arrive in background, please also check your system settings. + + Open link: %1$s + What\'s new?\n\n💯 End-to-end encryption is reliable and forever now. Padlocks 🔒 are gone!\n\n✉️ Classic email without end-to-end encryption is marked with a letter symbol\n\n😻 New enhanced profile screen for all your contacts\n\n🔲 New button for quick access to apps used in a chat\n\n❤️ Please donate to help us remain independent and continue to bring improvements: %1$s