diff --git a/README.md b/README.md
index 8bd80b0..13e913b 100644
--- a/README.md
+++ b/README.md
@@ -6,14 +6,7 @@
[](https://drone.nextcloud.com/nextcloud/talk-android) [](https://www.codacy.com/gh/nextcloud/talk-android/dashboard) [](https://github.com/nextcloud/talk-android/releases/latest) [](https://api.reuse.software/info/github.com/nextcloud/talk-android)
-[
](https://play.google.com/store/apps/details?id=com.nextcloud.talk2)
-[
](https://f-droid.org/packages/com.nextcloud.talk2/)
-
-Please note that Notifications won't work with the F-Droid version due to missing Google Play Services.
+Please note that Notifications won't work with the gFree version due to missing Google Play Services.
|||||||
|---|---|---|---|---|---|
diff --git a/app/build.gradle b/app/build.gradle
index 8965a6b..a3d958b 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -39,8 +39,8 @@ android {
// mayor.minor.hotfix.increment (for increment: 01-50=Alpha / 51-89=RC / 90-99=stable)
// xx .xxx .xx .xx
- versionCode 220000090
- versionName "22.0.0"
+ versionCode 220000290
+ versionName "22.0.2"
flavorDimensions "default"
renderscriptTargetApi = 19
diff --git a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt
index 6eb2c4f..16e2683 100644
--- a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt
@@ -532,12 +532,12 @@ class CallActivity : CallBaseActivity() {
)
}
- when (CapabilitiesUtil.getRecordingConsentType(conversationUser!!.capabilities!!.spreedCapability!!)) {
+ when (CapabilitiesUtil.getRecordingConsentType(conversationUser.capabilities!!.spreedCapability!!)) {
CapabilitiesUtil.RECORDING_CONSENT_NOT_REQUIRED -> initiateCall()
CapabilitiesUtil.RECORDING_CONSENT_REQUIRED -> askForRecordingConsent()
CapabilitiesUtil.RECORDING_CONSENT_DEPEND_ON_CONVERSATION -> {
val getRoomApiVersion = ApiUtils.getConversationApiVersion(
- conversationUser!!,
+ conversationUser,
intArrayOf(ApiUtils.API_V4, 1)
)
ncApi!!.getRoom(credentials, ApiUtils.getUrlForRoom(getRoomApiVersion, baseUrl, roomToken))
diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt
index aecdd39..7b6d685 100644
--- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt
@@ -3255,7 +3255,8 @@ class ChatActivity :
}
val searchItem = menu.findItem(R.id.conversation_search)
- searchItem.isVisible = CapabilitiesUtil.isUnifiedSearchAvailable(spreedCapabilities) &&
+ searchItem.isVisible =
+ hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.UNIFIED_SEARCH) &&
currentConversation!!.remoteServer.isNullOrEmpty() &&
!isChatThread()
diff --git a/app/src/main/java/com/nextcloud/talk/contextchat/ContextChatViewModel.kt b/app/src/main/java/com/nextcloud/talk/contextchat/ContextChatViewModel.kt
index 462725d..e1aaf17 100644
--- a/app/src/main/java/com/nextcloud/talk/contextchat/ContextChatViewModel.kt
+++ b/app/src/main/java/com/nextcloud/talk/contextchat/ContextChatViewModel.kt
@@ -60,7 +60,7 @@ class ContextChatViewModel @Inject constructor(private val chatNetworkDataSource
token = token,
messageId = messageId,
limit = LIMIT,
- threadId = threadId?.toInt()
+ threadId = threadId?.toIntOrNull()
)
if (threadId.isNullOrEmpty()) {
diff --git a/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt b/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt
index b7d0c3a..926bafd 100644
--- a/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt
@@ -89,6 +89,8 @@ import com.nextcloud.talk.contacts.ContactsActivity
import com.nextcloud.talk.contacts.ContactsUiState
import com.nextcloud.talk.contacts.ContactsViewModel
import com.nextcloud.talk.contacts.RoomUiState
+import com.nextcloud.talk.contextchat.ContextChatView
+import com.nextcloud.talk.contextchat.ContextChatViewModel
import com.nextcloud.talk.conversationlist.viewmodels.ConversationsListViewModel
import com.nextcloud.talk.data.network.NetworkMonitor
import com.nextcloud.talk.data.user.model.User
@@ -113,8 +115,6 @@ import com.nextcloud.talk.threadsoverview.ThreadsOverviewActivity
import com.nextcloud.talk.ui.BackgroundVoiceMessageCard
import com.nextcloud.talk.ui.dialog.ChooseAccountDialogFragment
import com.nextcloud.talk.ui.dialog.ChooseAccountShareToDialogFragment
-import com.nextcloud.talk.contextchat.ContextChatView
-import com.nextcloud.talk.contextchat.ContextChatViewModel
import com.nextcloud.talk.ui.dialog.ConversationsListBottomDialog
import com.nextcloud.talk.ui.dialog.FilterConversationFragment
import com.nextcloud.talk.ui.dialog.FilterConversationFragment.Companion.ARCHIVE
@@ -125,7 +125,6 @@ import com.nextcloud.talk.utils.ApiUtils
import com.nextcloud.talk.utils.BrandingUtils
import com.nextcloud.talk.utils.CapabilitiesUtil.hasSpreedFeatureCapability
import com.nextcloud.talk.utils.CapabilitiesUtil.isServerEOL
-import com.nextcloud.talk.utils.CapabilitiesUtil.isUnifiedSearchAvailable
import com.nextcloud.talk.utils.ClosedInterfaceImpl
import com.nextcloud.talk.utils.ConversationUtils
import com.nextcloud.talk.utils.FileUtils
@@ -319,7 +318,7 @@ class ConversationsListActivity :
return
}
currentUser?.capabilities?.spreedCapability?.let { spreedCapabilities ->
- if (isUnifiedSearchAvailable(spreedCapabilities)) {
+ if (hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.UNIFIED_SEARCH)) {
searchHelper = MessageSearchHelper(unifiedSearchRepository)
}
}
@@ -1072,7 +1071,7 @@ class ConversationsListActivity :
}
private fun fetchPendingInvitations() {
- if (hasSpreedFeatureCapability(currentUser!!.capabilities!!.spreedCapability!!, SpreedFeatures.FEDERATION_V1)) {
+ if (hasSpreedFeatureCapability(currentUser?.capabilities?.spreedCapability, SpreedFeatures.FEDERATION_V1)) {
binding.conversationListHintInclude.conversationListHintLayout.setOnClickListener {
val intent = Intent(this, InvitationsActivity::class.java)
startActivity(intent)
@@ -1203,7 +1202,7 @@ class ConversationsListActivity :
searchableConversationItems.clear()
searchableConversationItems.addAll(conversationItemsWithHeader)
if (hasSpreedFeatureCapability(
- currentUser!!.capabilities!!.spreedCapability!!,
+ currentUser?.capabilities?.spreedCapability,
SpreedFeatures.LISTABLE_ROOMS
)
) {
@@ -1464,7 +1463,11 @@ class ConversationsListActivity :
adapter?.filterItems()
}
- if (isUnifiedSearchAvailable(currentUser!!.capabilities!!.spreedCapability!!)) {
+ if (hasSpreedFeatureCapability(
+ currentUser?.capabilities?.spreedCapability,
+ SpreedFeatures.UNIFIED_SEARCH
+ )
+ ) {
startMessageSearch(filter)
}
} else {
@@ -1584,7 +1587,7 @@ class ConversationsListActivity :
selectedConversation = conversation
if (selectedConversation != null) {
val hasChatPermission = ParticipantPermissions(
- currentUser!!.capabilities!!.spreedCapability!!,
+ currentUser?.capabilities?.spreedCapability,
selectedConversation!!
)
.hasChatPermission()
@@ -1612,11 +1615,11 @@ class ConversationsListActivity :
private fun shouldShowLobby(conversation: ConversationModel): Boolean {
val participantPermissions = ParticipantPermissions(
- currentUser!!.capabilities?.spreedCapability!!,
+ currentUser?.capabilities?.spreedCapability,
selectedConversation!!
)
return conversation.lobbyState == ConversationEnums.LobbyState.LOBBY_STATE_MODERATORS_ONLY &&
- !ConversationUtils.canModerate(conversation, currentUser!!.capabilities!!.spreedCapability!!) &&
+ !ConversationUtils.canModerate(conversation, currentUser?.capabilities?.spreedCapability) &&
!participantPermissions.canIgnoreLobby()
}
diff --git a/app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java b/app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java
index 8d8233a..06c2f0d 100644
--- a/app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java
+++ b/app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java
@@ -219,16 +219,6 @@ public class RestModule {
httpClient.addInterceptor(new HeadersInterceptor());
- List specs = new ArrayList<>();
- if (BuildConfig.DEBUG) {
- specs.add(ConnectionSpec.COMPATIBLE_TLS);
- specs.add(ConnectionSpec.CLEARTEXT);
- httpClient.connectionSpecs(specs);
- } else {
- specs.add(ConnectionSpec.COMPATIBLE_TLS);
- httpClient.connectionSpecs(specs);
- }
-
if (BuildConfig.DEBUG && !context.getResources().getBoolean(R.bool.nc_is_debug)) {
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor();
loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
diff --git a/app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.kt b/app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.kt
index 4a996cb..0e2c715 100644
--- a/app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.kt
+++ b/app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.kt
@@ -232,7 +232,7 @@ class NotificationWorker(context: Context, workerParams: WorkerParameters) : Wor
bundle.putInt(BundleKeys.KEY_CALL_FLAG, conversation.callFlag)
val participantPermission = ParticipantPermissions(
- userBeingCalled!!.capabilities!!.spreedCapability!!,
+ userBeingCalled?.capabilities?.spreedCapability,
conversation
)
bundle.putBoolean(
diff --git a/app/src/main/java/com/nextcloud/talk/profile/ProfileActivity.kt b/app/src/main/java/com/nextcloud/talk/profile/ProfileActivity.kt
index 5786ca4..d5ba256 100644
--- a/app/src/main/java/com/nextcloud/talk/profile/ProfileActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/profile/ProfileActivity.kt
@@ -244,7 +244,7 @@ class ProfileActivity : BaseActivity() {
binding.emptyList.root.visibility = View.GONE
binding.userinfoList.visibility = View.VISIBLE
if (CapabilitiesUtil.hasSpreedFeatureCapability(
- currentUser!!.capabilities!!.spreedCapability!!,
+ currentUser?.capabilities?.spreedCapability,
SpreedFeatures.TEMP_USER_AVATAR_API
)
) {
diff --git a/app/src/main/java/com/nextcloud/talk/settings/SettingsActivity.kt b/app/src/main/java/com/nextcloud/talk/settings/SettingsActivity.kt
index 21e8f56..c30df1d 100644
--- a/app/src/main/java/com/nextcloud/talk/settings/SettingsActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/settings/SettingsActivity.kt
@@ -945,7 +945,7 @@ class SettingsActivity :
binding.settingsShowNotificationWarning.visibility = View.GONE
}
- if (CapabilitiesUtil.isReadStatusAvailable(currentUser!!.capabilities!!.spreedCapability!!)) {
+ if (CapabilitiesUtil.isReadStatusAvailable(currentUser?.capabilities?.spreedCapability)) {
binding.settingsReadPrivacySwitch.isChecked = !CapabilitiesUtil.isReadStatusPrivate(currentUser!!)
} else {
binding.settingsReadPrivacy.visibility = View.GONE
diff --git a/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt b/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt
index 75af1dd..4eda16d 100644
--- a/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt
+++ b/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt
@@ -100,11 +100,13 @@ object CapabilitiesUtil {
//region SpreedCapabilities
@JvmStatic
- fun hasSpreedFeatureCapability(spreedCapabilities: SpreedCapability, spreedFeatures: SpreedFeatures): Boolean {
- if (spreedCapabilities.features != null) {
- return spreedCapabilities.features!!.contains(spreedFeatures.value)
+ fun hasSpreedFeatureCapability(spreedCapabilities: SpreedCapability?, spreedFeatures: SpreedFeatures): Boolean {
+ if (spreedCapabilities == null) {
+ Log.e(TAG, "spreedCapabilities were null when checking capability ${spreedFeatures.value}")
+ return false
}
- return false
+
+ return spreedCapabilities.features?.contains(spreedFeatures.value) == true
}
fun isSharedItemsAvailable(spreedCapabilities: SpreedCapability): Boolean =
@@ -136,12 +138,16 @@ object CapabilitiesUtil {
return CONVERSATION_DESCRIPTION_LENGTH_FOR_OLD_SERVER
}
- fun isReadStatusAvailable(spreedCapabilities: SpreedCapability): Boolean {
- if (spreedCapabilities.config?.containsKey("chat") == true) {
- val map: Map? = spreedCapabilities.config!!["chat"]
- return map != null && map.containsKey("read-privacy")
+ fun isReadStatusAvailable(spreedCapabilities: SpreedCapability?): Boolean {
+ val chatConfig = spreedCapabilities?.config?.get("chat") as? Map<*, *>
+ return if (chatConfig?.containsKey("read-privacy") == true) {
+ true
+ } else {
+ if (spreedCapabilities == null) {
+ Log.e(TAG, "spreedCapabilities were null when checking capability isReadStatusAvailable")
+ }
+ false
}
- return false
}
fun retentionOfEventRooms(spreedCapabilities: SpreedCapability): Int {
@@ -201,9 +207,6 @@ object CapabilitiesUtil {
fun isConversationDescriptionEndpointAvailable(spreedCapabilities: SpreedCapability): Boolean =
hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.ROOM_DESCRIPTION)
- fun isUnifiedSearchAvailable(spreedCapabilities: SpreedCapability): Boolean =
- hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.UNIFIED_SEARCH)
-
fun isAbleToCall(spreedCapabilities: SpreedCapability): Boolean =
if (
spreedCapabilities.config?.containsKey("call") == true &&
diff --git a/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt
index 3142709..85e89b0 100644
--- a/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt
+++ b/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt
@@ -27,11 +27,11 @@ object ConversationUtils {
Participant.ParticipantType.GUEST_MODERATOR == conversation.participantType ||
Participant.ParticipantType.MODERATOR == conversation.participantType
- fun isLockedOneToOne(conversation: ConversationModel, spreedCapabilities: SpreedCapability): Boolean =
+ fun isLockedOneToOne(conversation: ConversationModel, spreedCapabilities: SpreedCapability?): Boolean =
conversation.type == ConversationEnums.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL &&
CapabilitiesUtil.hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.LOCKED_ONE_TO_ONE)
- fun canModerate(conversation: ConversationModel, spreedCapabilities: SpreedCapability): Boolean =
+ fun canModerate(conversation: ConversationModel, spreedCapabilities: SpreedCapability?): Boolean =
isParticipantOwnerOrModerator(conversation) &&
!isLockedOneToOne(conversation, spreedCapabilities) &&
conversation.type != ConversationEnums.ConversationType.FORMER_ONE_TO_ONE &&
diff --git a/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt b/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt
index a46bfa7..4e57300 100644
--- a/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt
+++ b/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt
@@ -14,7 +14,7 @@ import com.nextcloud.talk.models.json.capabilities.SpreedCapability
* see https://nextcloud-talk.readthedocs.io/en/latest/constants/#attendee-permissions
*/
class ParticipantPermissions(
- private val spreedCapabilities: SpreedCapability,
+ private val spreedCapabilities: SpreedCapability?,
private val conversation: ConversationModel
) {
val isDefault = (conversation.permissions and DEFAULT) == DEFAULT
diff --git a/app/src/main/res/values-be/strings.xml b/app/src/main/res/values-be/strings.xml
index 4a7de4d..4653a74 100644
--- a/app/src/main/res/values-be/strings.xml
+++ b/app/src/main/res/values-be/strings.xml
@@ -31,8 +31,8 @@
Дазвол на камеру атрыманы. Выберыце камеру яшчэ раз.
Скасаваць уваход
Выбраць аватар з воблака
- Ачысціць паведамленне статусу
- Ачысціць паведамленне статусу пасля
+ Ачысціць
+ Ачысціць паведамленне статусу праз
Закрыць
Значок Закрыць
Злучэнне ўсталявана
@@ -209,7 +209,7 @@
Аптымізацыя батарэі ўключана, што можа выклікаць праблемы. Вам варта адключыць аптымізацыю батарэі!
Налады батарэі
Прылада
- Адкрыць кантрольны спіс вырашэння праблем
+ Адкрыць спіс вырашэння праблем
Адкрыць экран дыягностыкі
Адкрыць dontkillmyapp.com
Атрыманне апошняга push-токена firebase
@@ -274,7 +274,7 @@
Пераслаць …
Галерэя
У вас яшчэ няма сервера?\nНацісніце тут, каб атрымаць яго ў пастаўшчыка
- Атрымаць зыходны код
+ Зыходны код
Група
Госць
Гасцявы доступ
@@ -357,7 +357,7 @@
Апавяшчаць пра ход выканання запампоўвання
Налады апавяшчэнняў
Апавяшчэнні наладжаны няправільна
- Дазвол на апавяшчэнні і налады батарэі зададзены правільна, каб атрымліваць апавяшчэнні. Калі ў вас усё адно ўзнікаюць праблемы з атрыманнем апавяшчэнняў, праверце, ці ўключаны каналы апавяшчэнняў для выклікаў і паведамленняў. Дадатковую дапамогу можна знайсці на сайце DontKillMyApp.com або ў спісе пошуку і вырашэння праблем. Калі гэта не дапаможа, перайдзіце на экран дыягностыкі і адпраўце справаздачу пра памылку.
+ Дазвол на апавяшчэнні і налады батарэі зададзены правільна. Калі ў вас усё адно ўзнікаюць праблемы з атрыманнем апавяшчэнняў, праверце, ці ўключаны каналы апавяшчэнняў для выклікаў і паведамленняў. Дадатковую дапамогу можна знайсці на сайце DontKillMyApp.com або ў спісе пошуку і вырашэння праблем. Калі гэта не дапаможа, перайдзіце на экран дыягностыкі і адпраўце справаздачу пра памылку.
Вырашэнне праблем з апавяшчэннямі
Заўсёды апавяшчаць
Апавяшчаць пры згадванні
@@ -480,8 +480,8 @@
Выдаліць
Выдаліць уліковы запіс
Пацвердзіце свой намер выдаліць бягучы ўліковы запіс.
- Блакіраваць %1$s з дапамогай блакіроўкі экрана Android або біяметрычнага метаду, які падтрымліваецца
- Час чакання блакіроўкі экрана пры бяздзейнасці
+ Блакіраваць %1$s з дапамогай блакіроўкі экрана Android або даступнага біяметрычнага метаду
+ Час чакання блакіроўкі пры бяздзейнасці
Блакіроўка экрана
Забараняе рабіць здымкі экрана ў спісе нядаўняга і ўнутры праграмы
Бяспека экрана
@@ -513,7 +513,7 @@
Няма абагуленых элементаў
Месцазнаходжанне
Абагуленае месцазнаходжанне
- Калі апавяшчэнні настроены няправільна, паказваць звычайнае папярэджанне
+ Калі апавяшчэнні наладжаны няправільна, паказваць звычайнае папярэджанне
Паказваць звычайнае папярэджанне аб апавяшчэннях
Сартаваць па
Пачаць супольны чат
@@ -530,7 +530,7 @@
Не ўдалося запампаваць
Не ўдалося запампаваць %1$s
Няўдача
- Абагульванне ад %1$s
+ Абагульванне з %1$s
Запампаваць з прылады
Запампоўванне
%1$s у %2$s - %3$s\%%
@@ -553,7 +553,7 @@
Выкл.
Прадвызначаныя
Прытрымлівацца налад размовы
- 1 гадзіна
+ 1 гадзіну
У сетцы
Статус у сетцы
Адкрытыя размовы
@@ -627,7 +627,7 @@
Задаць
Задаць аватар з камеры
Задаць статус
- Задаць паведамленне статусу
+ Задаць
Абагуліць
Далучайцеся да размовы %1$s у %2$s
Аўдыя
@@ -686,7 +686,7 @@
Разблакіраваць
Непрачытанае
Запампаваць новы аватар з прылады
- %1$s сёння не на працы і можа не адказаць
+ %1$s не на працы і можа не адказаць
%1$s сёння не на працы
Замена:
Аватар карыстальніка
diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml
index 9543747..85ceb6f 100644
--- a/app/src/main/res/values-da/strings.xml
+++ b/app/src/main/res/values-da/strings.xml
@@ -88,7 +88,7 @@
Sænk hånden
Marker samtalen %1$s som læst
Marker samtalen %1$s som ulæst
- Nævnt
+ Omtalt
Nyeste først
Ældste først
A - Å
diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml
index af42bd6..c97cbd3 100644
--- a/app/src/main/res/values-el/strings.xml
+++ b/app/src/main/res/values-el/strings.xml
@@ -156,6 +156,7 @@
Επεξεργασία
Επεξεργασία μηνύματος
8 ώρες
+ 4 εβδομάδες
Απενεργοποίηση
1 μέρα
1 ώρα
@@ -208,6 +209,7 @@
Σήμανση ως αναγνωσμένο
επισήμανση ως μή-αναγνωσμένο
Απέτυχε
+ Εκτός σύνδεσης
Ακύρωση απάντησης
Το μήνυμα διαβάστηκε
Το μήνυμα στάλθηκε
diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml
index f8aa767..03992d7 100644
--- a/app/src/main/res/values-eu/strings.xml
+++ b/app/src/main/res/values-eu/strings.xml
@@ -79,6 +79,7 @@
Hasi idazten bilatzeko …
Bilatu …
Mezuak
+ Isilarazi jakinarazpen guztiak
Aukeratutako kontua inportatu da eta eskuragarri dago
Honi buruz
Erabiltzaile aktiboa
diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml
index 8ae28ab..3d7e3a7 100644
--- a/app/src/main/res/values-gl/strings.xml
+++ b/app/src/main/res/values-gl/strings.xml
@@ -374,7 +374,7 @@
Participantes
Engadir participantes
Contrasinal
- Establecer os permisos
+ Estabelecer os permisos
Algúns permisos foron denegados.
Autorice os permisos
Abrir os axustes
@@ -587,7 +587,7 @@
Non foi posíbel ler o código QR.
Erguer a man
Todo
- Non é posible compartir ficheiros desde o almacenamento sen permisos
+ Non é posíbel compartir ficheiros desde o almacenamento sen permisos
Fíos recentes
Estase a gravar a chamada
Cancelar o inicio da gravación
@@ -607,7 +607,7 @@
Cambióuselle o nome a conversa %1$s
Volver enviar
Restabelecer o estado
- Non é posible unirse a outras salas mentres está nunha chamada
+ Non é posíbel unirse a outras salas mentres está nunha chamada
Gardar
Escanear o código QR
Sincronizar só con servidores de confianza
@@ -654,7 +654,7 @@
Cambiar á sala principal
Tirar unha foto
Produciuse un erro ao tirar a foto
- Non é posible tirar unha foto sen permisos
+ Non é posíbel tirar unha foto sen permisos
Volver tirar a foto
Enviar
Cambiar de cámara
diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml
index a9ed840..809e40d 100644
--- a/app/src/main/res/values-hu-rHU/strings.xml
+++ b/app/src/main/res/values-hu-rHU/strings.xml
@@ -5,6 +5,7 @@
Hozzáadás a jegyzetekhez
A(z) %1$s beszélgetés hozzáadva a kedvencekhez
Keresés itt: %s
+ Megjelenés nem kapcsolódottként
Beszélgetés archiválása
Ha archivál egy beszélgetést, akkor alapértelmezetten el lesz rejtve. Válassza az „Archiválva” szűrőt az archivált beszélgetések megtekintéséhez. A közvetlen említéseket továbbra is meg fogja kapni.
Archiválva
@@ -48,6 +49,7 @@
Veszélyes területet
%1$s itt: %2$s
Profilkép törlése
+ Hangfelvétel törlése
%1$s beszélgetés törlése
Ne zavarjanak
Ne törölje
@@ -77,6 +79,10 @@
Elhagyta a következő beszélgetést: %1$s
További találatok betöltése
Helyi idő: %1$s
+ Hely engedély szükséges
+ Engedélyezze az alkalmazásbeállításokban
+ Helyszolgáltatások letiltva
+ A funkció használatához engedélyezze a helyszolgáltatásokat (GPS)
Beszélgetés zárolása
Zár szimbólum
Kéz letétele
@@ -90,6 +96,7 @@
Legnagyobb elöl
Legkisebb elöl
Üzenet másolva
+ Biztos, hogy törli ezt az üzenetet?
Törölte az üzenetet
Szerkesztette: %1$s
Koppintson a szavazás megnyitásához
@@ -97,6 +104,7 @@
Kezdjen el gépelni a kereséshez…
Keresés…
Üzenetek
+ Összes értesítés némítása
A kiválasztott fiók importálva lett és elérhető
Leírás
Aktív felhasználó
@@ -326,6 +334,7 @@
Üzenet elolvasva
Küldés
Üzenet elküldve
+ A mikrofon engedélyezve van, és a hang felvételre kerül
A hanghívás engedélyezéséhez meg kell adnia a „Mikrofon” engedélyt.
Nem fogadott hívás a következőtől: %s
Moderátor
@@ -411,6 +420,7 @@
Keresés törlése
Fiók kiválasztása
Üzenet frissítése
+ Hangfelvétel küldése
Érzékeny beszélgetés
Az üzenet-előnézet le lesz tiltva a beszélgetési listában és az értesítésekben
%1$s GIF képet küldött.
@@ -543,15 +553,18 @@
Nincs archivált beszélgetés
Nincs mentett offline üzenet
A hiányzó engedélyek miatt nincs telefonszám-integráció
- Minden üzenet
+ Összes üzenet
csak @-megemlítések
+ Ki
Alapértelmezett
+ Beszélgetésbeállítások követése
1 óra
Elérhető
Elérhető állapot
Beszélgetések megnyitása
Megnyitás a Fájlok alkalmazásban
Jegyzetek megnyitása
+ Ugrás a szálhoz
Hangüzenet lejátszása/szüneteltetése
Lejátszási sebesség vezérlése
Lehetőség hozzáadása
@@ -571,9 +584,11 @@
Szavazat leadása
Szavazat leadva
Előzőleg beállított
+ A QR-kód nem olvasható el
Kéz felemelése
Összes
A fájlok megosztása a tárhelyről engedély nélkül nem lehetséges
+ Legutóbbi szálak
A hívásról felvétel készül
Felvétel indításának megszakítása
A felvétel sikertelen. Lépjen kapcsolatba a rendszergazdával.
@@ -594,7 +609,7 @@
Állapot visszaállítása
Hívás közben nem lehet más szobákhoz csatlakozni
Mentés
- Scan QR Code
+ QR-kód leolvasása
Szinkronizálás csak a megbízható kiszolgálókkal
Föderált
Csak az ezen a példányon lévő személyek és a vendégek láthatják
@@ -631,6 +646,7 @@
Kitiltott résztvevők megjelenítése
Kedvenc
Nincs jogosultsága hívást indítani
+ Szál létrehozása
hívás indítás
Állapotüzenet
Üzenet visszaállítva
@@ -649,6 +665,12 @@
Ez a hét
Ez egy tesztüzenet
Ezen a hétvégén
+ Szál létrehozásának megszakítása
+ Szálértesítések
+ Válasz
+ Szál címe
+ Szálak
+ Nem találhatók szálak
Ma
Holnap
Lefordítás
@@ -694,6 +716,10 @@
- Ez a beszélgetés %1$d nap tétlenség után mindenkinél törölve lesz
- Ez a beszélgetés %1$d nap tétlenség után mindenkinél törölve lesz
+
+ - %d válasz
+ - %d válasz
+
- %d szavazat
- %d szavazat
diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml
index d0fba1d..c63c258 100644
--- a/app/src/main/res/values-ja-rJP/strings.xml
+++ b/app/src/main/res/values-ja-rJP/strings.xml
@@ -565,6 +565,7 @@
音声番号
お気に入り
通話を開始することが許可されていません
+ スレッドを作成する
会話を開始
ステータスメッセージ
ブレイクアウトルームに切り替える
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index cfba471..186a5fb 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -83,7 +83,7 @@
Por favor, ative-a nas configurações do aplicativo
Serviços de localização desativados
Ative os serviços de localização (GPS) para usar este recurso
- Bloquear conversa
+ Trancar conversa
Símbolo de cadeado
Baixar mão
Conversa %1$s marcada como lida
@@ -118,7 +118,7 @@
Adicionar aos favoritos
OK, tudo pronto!
PIN: %1$s
- Desbloquear %1$s
+ Destrancar %1$s
Para ativar os alto-falantes bluetooth, conceda a permissão \"Dispositivos próximos\".
Atender como chamada de vídeo
Atender apenas como chamada de voz
@@ -316,8 +316,8 @@
Sua localização atual
permissão de localização é necessária
Posição desconhecida
- Bloqueado
- Toque para desbloquear
+ Trancado
+ Toque para destrancar
Não definido
Marcar como lido
Marcar como não lido
@@ -484,9 +484,9 @@
Excluir
Excluir conta
Confirme se quer realmente excluir a conta atual.
- Bloquear %1$s com o bloqueio de tela do Android ou um método biométrico suportado
+ Trancar %1$s com o bloqueio de tela do Android ou um método biométrico suportado
Tempo limite para bloqueio de tela
- Bloquear tela
+ Bloqueio de tela
Impede capturas de tela na lista recente e dentro do aplicativo
Segurança da tela
A versão do servidor é muito antiga e não será suportada na próxima versão!
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 20e9564..7fa6c41 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -285,7 +285,7 @@
当被提及时提醒
从不提醒
当前离线,请检查您的连接
- OK
+ 确定
向注册用户开放对话
同样对访客用户开放
所有者
@@ -579,7 +579,7 @@
检索个人用户信息失败
未设置个人信息
在你的个人资料页上添加姓名、图片和联系方式。
- 你什么状态?
+ 您的状态如何?
- %d 票