Don't double-isolate-bidi on phone numbers.

Fixes #10257
This commit is contained in:
Greyson Parrelli
2020-12-17 11:53:58 -05:00
committed by Alan Evans
parent dbf78d1b69
commit ccd405fdce
2 changed files with 16 additions and 10 deletions

View File

@@ -441,7 +441,7 @@ public class Recipient {
String name = getName(context);
if (Util.isEmpty(name)) {
name = getProfileName().toString();
name = StringUtil.isolateBidi(getProfileName().toString());
}
if (Util.isEmpty(name) && !Util.isEmpty(e164)) {
@@ -449,25 +449,27 @@ public class Recipient {
}
if (Util.isEmpty(name)) {
name = email;
name = StringUtil.isolateBidi(email);
}
if (Util.isEmpty(name)) {
name = username;
name = StringUtil.isolateBidi(username);
}
if (Util.isEmpty(name)) {
name = context.getString(R.string.Recipient_unknown);
name = StringUtil.isolateBidi(context.getString(R.string.Recipient_unknown));
}
return StringUtil.isolateBidi(name);
return name;
}
public @NonNull String getMentionDisplayName(@NonNull Context context) {
String name = isSelf ? getProfileName().toString() : getName(context);
name = StringUtil.isolateBidi(name);
if (Util.isEmpty(name)) {
name = isSelf ? getName(context) : getProfileName().toString();
name = StringUtil.isolateBidi(name);
}
if (Util.isEmpty(name) && !Util.isEmpty(e164)) {
@@ -475,14 +477,14 @@ public class Recipient {
}
if (Util.isEmpty(name)) {
name = email;
name = StringUtil.isolateBidi(email);
}
if (Util.isEmpty(name)) {
name = context.getString(R.string.Recipient_unknown);
name = StringUtil.isolateBidi(context.getString(R.string.Recipient_unknown));
}
return StringUtil.isolateBidi(name);
return name;
}
public @NonNull String getShortDisplayName(@NonNull Context context) {

View File

@@ -160,8 +160,12 @@ public final class StringUtil {
* For more details, see:
* https://www.w3.org/International/questions/qa-bidi-unicode-controls
*/
public static @NonNull String isolateBidi(@NonNull String text) {
if (text.isEmpty()) {
public static @NonNull String isolateBidi(@Nullable String text) {
if (text == null) {
return "";
}
if (Util.isEmpty(text)) {
return text;
}