diff --git a/app/src/main/java/org/linphone/settings/ChatSettingsFragment.java b/app/src/main/java/org/linphone/settings/ChatSettingsFragment.java
index e5e6496a0..b80374b84 100644
--- a/app/src/main/java/org/linphone/settings/ChatSettingsFragment.java
+++ b/app/src/main/java/org/linphone/settings/ChatSettingsFragment.java
@@ -35,6 +35,7 @@ import org.linphone.mediastream.Version;
import org.linphone.settings.widget.BasicSetting;
import org.linphone.settings.widget.ListSetting;
import org.linphone.settings.widget.SettingListenerBase;
+import org.linphone.settings.widget.SwitchSetting;
import org.linphone.settings.widget.TextSetting;
public class ChatSettingsFragment extends SettingsFragment {
@@ -43,6 +44,7 @@ public class ChatSettingsFragment extends SettingsFragment {
private TextSetting mSharingServer, mMaxSizeForAutoDownloadIncomingFiles;
private BasicSetting mAndroidNotificationSettings;
private ListSetting mAutoDownloadIncomingFilesPolicy;
+ private SwitchSetting mHideEmptyRooms, mHideRemovedProxiesRooms;
@Nullable
@Override
@@ -74,6 +76,11 @@ public class ChatSettingsFragment extends SettingsFragment {
mAutoDownloadIncomingFilesPolicy = mRootView.findViewById(R.id.pref_auto_download_policy);
mAndroidNotificationSettings = mRootView.findViewById(R.id.pref_android_app_notif_settings);
+
+ mHideEmptyRooms = mRootView.findViewById(R.id.pref_android_app_hide_empty_chat_rooms);
+
+ mHideRemovedProxiesRooms =
+ mRootView.findViewById(R.id.pref_android_app_hide_chat_rooms_from_removed_proxies);
}
private void setListeners() {
@@ -131,6 +138,22 @@ public class ChatSettingsFragment extends SettingsFragment {
}
}
});
+
+ mHideEmptyRooms.setListener(
+ new SettingListenerBase() {
+ @Override
+ public void onBoolValueChanged(boolean newValue) {
+ LinphonePreferences.instance().setHideEmptyChatRooms(newValue);
+ }
+ });
+
+ mHideRemovedProxiesRooms.setListener(
+ new SettingListenerBase() {
+ @Override
+ public void onBoolValueChanged(boolean newValue) {
+ LinphonePreferences.instance().setHideRemovedProxiesChatRooms(newValue);
+ }
+ });
}
private void updateValues() {
@@ -142,6 +165,11 @@ public class ChatSettingsFragment extends SettingsFragment {
mAndroidNotificationSettings.setVisibility(View.GONE);
}
+ mHideEmptyRooms.setChecked(LinphonePreferences.instance().hideEmptyChatRooms());
+
+ mHideRemovedProxiesRooms.setChecked(
+ LinphonePreferences.instance().hideRemovedProxiesChatRooms());
+
setListeners();
}
diff --git a/app/src/main/java/org/linphone/settings/LinphonePreferences.java b/app/src/main/java/org/linphone/settings/LinphonePreferences.java
index 79811451a..82b9ab721 100644
--- a/app/src/main/java/org/linphone/settings/LinphonePreferences.java
+++ b/app/src/main/java/org/linphone/settings/LinphonePreferences.java
@@ -1227,4 +1227,20 @@ public class LinphonePreferences {
public void enableChatRoomsShortcuts(boolean enable) {
getConfig().setBool("app", "shortcuts", enable);
}
+
+ public boolean hideEmptyChatRooms() {
+ return getConfig().getBool("misc", "hide_empty_chat_rooms", true);
+ }
+
+ public void setHideEmptyChatRooms(boolean hide) {
+ getConfig().setBool("misc", "hide_empty_chat_rooms", hide);
+ }
+
+ public boolean hideRemovedProxiesChatRooms() {
+ return getConfig().getBool("misc", "hide_chat_rooms_from_removed_proxies", true);
+ }
+
+ public void setHideRemovedProxiesChatRooms(boolean hide) {
+ getConfig().setBool("misc", "hide_chat_rooms_from_removed_proxies", hide);
+ }
}
diff --git a/app/src/main/res/layout/settings_chat.xml b/app/src/main/res/layout/settings_chat.xml
index 20a22a6c1..8e0479b52 100644
--- a/app/src/main/res/layout/settings_chat.xml
+++ b/app/src/main/res/layout/settings_chat.xml
@@ -40,6 +40,19 @@
android:layout_height="wrap_content"
linphone:title="@string/pref_android_app_notif_settings_title"/>
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 1bacb0a67..2ee16a290 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -449,6 +449,9 @@ Disponible gratuitement ici : %s
Jamais
Toujours
Si inférieur à la taille max
+ Cacher les conversations vides
+ Cacher les conversations liées aux comptes supprimés
+ S\'il vous manque des conversations, essayez de décocher ce paramètre
Réseau
Utiliser WiFi uniquement
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index e4f202520..c5ead1f4d 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -286,7 +286,9 @@
Буфер джиттера:
Кодер:
Декодер
+ Фильтр плеера:
Отображаемый фильтр:
+ Фильтр захвата:
Вызов
Вы действительно хотите удалить выбранные журналы вызовов?
@@ -366,6 +368,9 @@
Туннель
Сервер
Порт
+ Включить двойной режим
+ Имя хоста (2-й сервер для двойного режима)
+ Порт (2-й сервер для двойного режима)
Режим
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index cf06429f1..d5a168819 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -472,6 +472,9 @@
Never
Always
If lighter than max size
+ Hide empty chat rooms
+ Hide chat rooms from removed proxy configs
+ If you have missing chat rooms, try to uncheck this setting
Network