diff --git a/res/layout/emoji_variation_selector.xml b/res/layout/emoji_variation_selector.xml
index 249ed5de65..faeaed3394 100644
--- a/res/layout/emoji_variation_selector.xml
+++ b/res/layout/emoji_variation_selector.xml
@@ -4,6 +4,6 @@
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:background="?attr/emoji_variation_selector_background">
+ android:elevation="4dp">
\ No newline at end of file
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 61ac8b96ec..526ad2b2b8 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -1386,7 +1386,6 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangenSession starten
Bitte geben Sie einen Gruppennamen ein.
Bitte geben Sie einen kürzeren Gruppennamen ein.
- Bitte wählen Sie mindestens zwei Gruppenmitglieder aus.
Eine geschlossene Gruppe kann maximal zehn Mitglieder haben.
Ein Mitglied Ihrer Gruppe hat eine ungültige Session ID.
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 6f1f23d7f3..e01fa95ef2 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -1398,7 +1398,6 @@ Se recibió un mensaje de intercambio de claves para una versión no válida del
Empezar una Session
Por favor, ingresa un nombre de grupo
Por favor, ingresa un nombre de grupo más corto
- Por favor, elige al menos 2 miembros del grupo
Un grupo cerrado no puede tener más de 10 miembros
Uno de los miembros de tu grupo tiene un ID de Session no válido
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index a615bcadc5..e5e76238b6 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -1312,7 +1312,6 @@
شروع Session
لطفا یک نام گروه وارد کنید
لطفا نام گروه کوتاهتری وارد کنید
- لطفا حداقل ۲ عضو برای گروه انتخاب کنید
یک گروه خصوصی نمیتواند بیش از ۱۰ عضو داشته باشد
یکی از اعضای گروه شما دارای شناسه نامعتبر است
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 9beb68eea1..4860e9eb28 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -1393,7 +1393,6 @@ Vous avez reçu un message d’échange de clés pour une version de protocole i
Démarrer une session
Veuillez saisir un nom de groupe
Veuillez saisir un nom de groupe plus court
- Veuillez sélectionner au moins 2 membres
Un groupe privé ne peut pas avoir plus de 10 membres
Un des membres de votre groupe a un Session ID non valide
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 14a9234fe3..6e18ab3056 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -1394,7 +1394,6 @@ Ricevuto un messaggio di scambio chiavi per una versione di protocollo non valid
Inizia una sessione
Inserisci un nome per il gruppo
Inserisci un nome gruppo più breve
- Scegli almeno 2 membri del gruppo
Un gruppo chiuso non può avere più di 10 membri
Uno dei membri del tuo gruppo ha una Sessione ID non valido
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 228c5cf935..4f1d243de7 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -1467,7 +1467,6 @@ Otrzymano wiadomość wymiany klucz dla niepoprawnej wersji protokołu.
Rozpocznij sesję
Wpisz nazwę grupy
Wprowadź krótszą nazwę grupy
- Wybierz przynajmniej 2 członków grupy
Grupa zamknięta nie może mieć więcej niż 10 członków
Jeden z członków Twojej grupy ma nieprawidłowy identyfikator Session
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index f99d092a4d..d3a0953ef6 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -1397,7 +1397,6 @@
Iniciar uma sessão
Digite um nome de grupo
Digite um nome de grupo mais curto
- Escolha pelo menos 2 membros do grupo
Um grupo fechado não pode ter mais de 10 membros
Um dos membros do seu grupo tem um ID Session inválido
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 54e0ec72e5..affce79bf2 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -85,7 +85,7 @@
Браузер не найден
- Ваш код безопасности с %1$s изменился. Это означает, что либо вашу переписку пытаются перехватить, либо %2$s просто переустановил(-а) Session.
+ Ваш код безопасности с %1$s изменился. Это означает, что либо вашу переписку пытаются перехватить, либо %2$s просто переустановил(а) Session.
Возможно, вам стоит подтвердить код безопасности с этим контактом.
Принять
@@ -110,7 +110,7 @@
Отправка не удалась, нажмите для деталей
Получено сообщение обмена ключами. Нажмите, чтобы его обработать.
- %1$s покинул группу.
+ %1$s покинул(a) группу.
Отправка не удалась, нажмите для негарантированного отката
Отправить как незашифрованное SMS?
Отправить как незашифрованное MMS?
@@ -151,7 +151,7 @@
Вы сможете снова получать сообщения и звонки от этого контакта.
Существующие участники смогут снова добавить вас в группу.
Разблокировать
- Вложение превышает допустимый размер для того типа сообщения, которое вы отправляете.
+ Вложение превышает допустимый размер для данного типа сообщения.
Камера недоступна
Невозможно записать аудио!
На вашем устройстве не найдено приложение для открытия этой ссылки.
@@ -459,7 +459,7 @@
Пропущен звонок от %s
%s теперь в Session!
Вы отключили исчезающие сообщения.
- %1$s отключил исчезающие сообщения.
+ %1$s отключил(а) исчезающие сообщения.
Вы установили таймер для исчезающих сообщений на %1$s.
%1$s установил(а) таймер для исчезающих сообщений на %2$s.
Ваш с %s код безопасности изменился.
@@ -544,7 +544,7 @@
Необходимо указать код страны
Необходимо указать номер телефона
Неверный номер
- Указанный вами
+ Указанный вами
номер телефона (%s) неверен.
Отсутствуют Службы Google Play
На устройстве отсутствуют Службы Google Play. Вы можете продолжить использование Session, но надежность и работоспособность не гарантируются.\n\nЕсли вы не продвинутый пользователь, не используете стороннюю прошивку Android, либо считаете, что видите это сообщение по ошибке, обратитесь в службу поддержки по адресу support@signal.org.
@@ -653,7 +653,7 @@
MMS-сообщение испорчено
MMS-сообщение зашифровано для несуществующей сессии
- Откл. звук уведомлений
+ Отключить звук уведомлений
Веб-браузер не установлен!
@@ -933,7 +933,7 @@
- %1$s присоединились к группе.
- %1$s присоединились к группе.
- Группа теперь называется «%1$s».
+ Название группы поменялось на «%1$s».
Сделать ваше имя и фотографию профиля видимыми для этой группы?
@@ -1193,11 +1193,11 @@
Новый разговор
Начните свое общение с друзьями.
- Сбросить защищённый сеанс
+ Обновить Сеанс Шифрования
Вкл. звук
- Откл. звук уведомлений
+ Отключить звук уведомлений
Добавить вложение
Редактировать группу
@@ -1383,7 +1383,7 @@
Друзья не позволят друзьям использовать ненадежные мессенджеры. Пользуйтесь на здоровье.
Познакомьтесь со своим Session ID
- Ваш Session ID - это уникальный адрес, который могут использовать другие люди для связи с вами при помощи Session. Поскольку ваш Session ID никак не связан с вашей настоящей личностью, он по определению является полностью анонимным и конфиденциальным.
+ Ваш Session ID - это уникальный адрес, который другие пользователи могут использовать для связи с вами при помощи Session. Поскольку ваш Session ID никак не связан с вашей настоящей личностью, он по определению является полностью анонимным и конфиденциальным.
Скопировано в буфер обмена
Восстановите свой аккаунт
@@ -1451,7 +1451,6 @@
Начать Сессию
Пожалуйста, введите название группы
Пожалуйста, введите более короткое имя группы
- Пожалуйста, выберите как минимум 2 участников группы
В закрытой группе не может быть больше 10 участников
Один из участников вашей группы имеет недопустимый Session ID
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 6cb9408701..eb8f3fb261 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -1364,7 +1364,6 @@
开始对话
请输入群组名称
请输入较短的群组名称
- 请选择至少2位群组成员
私密群组成员不得超过10个
您群组中的一位成员的Session ID无效
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a1a3dd9b3b..4a2b5ca5e3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1747,7 +1747,7 @@
Start a Session
Please enter a group name
Please enter a shorter group name
- Please pick at least 2 group members
+ Please pick at least 1 group member
A closed group cannot have more than 10 members
One of the members of your group has an invalid Session ID
@@ -1841,7 +1841,7 @@
Add members
Group name can\'t be empty
Please enter a shorter group name
- Groups must have at least 2 group members
+ Groups must have at least 1 group member
A closed group cannot have more than 10 members
One of the members of your group has an invalid Session ID
Are you sure you want to remove this user?
diff --git a/src/org/thoughtcrime/securesms/components/emoji/EmojiVariationSelectorPopup.java b/src/org/thoughtcrime/securesms/components/emoji/EmojiVariationSelectorPopup.java
index 75dbe2afa3..6ddec92567 100644
--- a/src/org/thoughtcrime/securesms/components/emoji/EmojiVariationSelectorPopup.java
+++ b/src/org/thoughtcrime/securesms/components/emoji/EmojiVariationSelectorPopup.java
@@ -1,18 +1,19 @@
package org.thoughtcrime.securesms.components.emoji;
import android.content.Context;
-import android.os.Build;
-import androidx.annotation.NonNull;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.PopupWindow;
-import network.loki.messenger.R;
+import androidx.annotation.NonNull;
+
import org.thoughtcrime.securesms.components.emoji.EmojiKeyboardProvider.EmojiEventListener;
import java.util.List;
+import network.loki.messenger.R;
+
public class EmojiVariationSelectorPopup extends PopupWindow {
private final Context context;
@@ -29,10 +30,6 @@ public class EmojiVariationSelectorPopup extends PopupWindow {
setBackgroundDrawable(null);
setOutsideTouchable(true);
-
- if (Build.VERSION.SDK_INT >= 21) {
- setElevation(20);
- }
}
public void setVariations(List variations) {
diff --git a/src/org/thoughtcrime/securesms/loki/activities/CreateClosedGroupActivity.kt b/src/org/thoughtcrime/securesms/loki/activities/CreateClosedGroupActivity.kt
index b39c9cf93c..306173446e 100644
--- a/src/org/thoughtcrime/securesms/loki/activities/CreateClosedGroupActivity.kt
+++ b/src/org/thoughtcrime/securesms/loki/activities/CreateClosedGroupActivity.kt
@@ -115,7 +115,7 @@ class CreateClosedGroupActivity : PassphraseRequiredActionBarActivity(), LoaderM
return Toast.makeText(this, R.string.activity_create_closed_group_group_name_too_long_error, Toast.LENGTH_LONG).show()
}
val selectedMembers = this.selectContactsAdapter.selectedMembers
- if (selectedMembers.count() < 2) {
+ if (selectedMembers.count() < 1) {
return Toast.makeText(this, R.string.activity_create_closed_group_not_enough_group_members_error, Toast.LENGTH_LONG).show()
}
if (selectedMembers.count() > ClosedGroupsProtocol.groupSizeLimit) { // Minus one because we're going to include self later
@@ -136,7 +136,7 @@ class CreateClosedGroupActivity : PassphraseRequiredActionBarActivity(), LoaderM
return Toast.makeText(this, R.string.activity_create_closed_group_group_name_too_long_error, Toast.LENGTH_LONG).show()
}
val selectedMembers = this.selectContactsAdapter.selectedMembers
- if (selectedMembers.count() < 2) {
+ if (selectedMembers.count() < 1) {
return Toast.makeText(this, R.string.activity_create_closed_group_not_enough_group_members_error, Toast.LENGTH_LONG).show()
}
if (selectedMembers.count() > 10) {
diff --git a/src/org/thoughtcrime/securesms/loki/activities/EditClosedGroupActivity.kt b/src/org/thoughtcrime/securesms/loki/activities/EditClosedGroupActivity.kt
index 4d7b14a894..03762c60bd 100644
--- a/src/org/thoughtcrime/securesms/loki/activities/EditClosedGroupActivity.kt
+++ b/src/org/thoughtcrime/securesms/loki/activities/EditClosedGroupActivity.kt
@@ -223,7 +223,7 @@ class EditClosedGroupActivity : PassphraseRequiredActionBarActivity() {
isSSKBasedClosedGroup = false
}
- if (members.size < 2) {
+ if (members.size < 1) {
return Toast.makeText(this, R.string.activity_edit_closed_group_not_enough_group_members_error, Toast.LENGTH_LONG).show()
}
diff --git a/src/org/thoughtcrime/securesms/util/ResUtil.java b/src/org/thoughtcrime/securesms/util/ResUtil.java
index d83c5cbcf4..555f11e365 100644
--- a/src/org/thoughtcrime/securesms/util/ResUtil.java
+++ b/src/org/thoughtcrime/securesms/util/ResUtil.java
@@ -18,6 +18,7 @@
package org.thoughtcrime.securesms.util;
import android.content.Context;
+import android.content.res.Resources;
import android.content.res.Resources.Theme;
import android.content.res.TypedArray;
import android.graphics.drawable.Drawable;
@@ -25,10 +26,14 @@ import androidx.annotation.ArrayRes;
import androidx.annotation.AttrRes;
import androidx.annotation.DimenRes;
import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import android.util.TypedValue;
+import org.thoughtcrime.securesms.logging.Log;
+
public class ResUtil {
+ private static final String TAG = ResUtil.class.getSimpleName();
public static int getColor(Context context, @AttrRes int attr) {
final TypedArray styledAttributes = context.obtainStyledAttributes(new int[]{attr});
@@ -47,8 +52,15 @@ public class ResUtil {
return out.resourceId;
}
+ @Nullable
public static Drawable getDrawable(Context c, @AttrRes int attr) {
- return ContextCompat.getDrawable(c, getDrawableRes(c, attr));
+ int drawableRes = getDrawableRes(c, attr);
+ if (drawableRes == 0) {
+ Log.e(TAG, "Cannot find a drawable resource associated with the attribute: " + attr,
+ new Resources.NotFoundException());
+ return null;
+ }
+ return ContextCompat.getDrawable(c, drawableRes);
}
public static int[] getResourceIds(Context c, @ArrayRes int array) {