From 1ba04dd5263708a47e26688108af196f4f825fb3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 4 Mar 2024 21:23:41 +0000 Subject: [PATCH 01/25] fix(deps): update mockito monorepo to v5.11.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 98b3ade9b..2bc328f2c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -289,8 +289,8 @@ dependencies { implementation 'androidx.core:core-ktx:1.12.0' testImplementation 'junit:junit:4.13.2' - testImplementation 'org.mockito:mockito-core:5.10.0' - androidTestImplementation 'org.mockito:mockito-android:5.10.0' + testImplementation 'org.mockito:mockito-core:5.11.0' + androidTestImplementation 'org.mockito:mockito-android:5.11.0' testImplementation 'androidx.arch.core:core-testing:2.2.0' androidTestImplementation "androidx.test:core:1.5.0" From ba812cabdc8a4b4955eaa22f30b0c150b07fc185 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Fri, 1 Mar 2024 17:27:35 +0100 Subject: [PATCH 02/25] add rest of SpreedFeatures to Enums delete method hasSpreedFeatureCapability that accepts capability name as string Signed-off-by: Marcel Hibbe --- .../talk/adapters/items/ConversationItem.kt | 3 +- .../dialog/ConversationsListBottomDialog.kt | 13 ++++----- .../talk/ui/dialog/MessageActionsDialog.kt | 4 +-- .../java/com/nextcloud/talk/utils/ApiUtils.kt | 10 +++---- .../nextcloud/talk/utils/CapabilitiesUtil.kt | 28 +++++++++++-------- .../nextcloud/talk/utils/ConversationUtils.kt | 2 +- .../talk/utils/ParticipantPermissions.kt | 4 +-- .../DatabaseStorageModule.java | 7 +++-- 8 files changed, 39 insertions(+), 32 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt b/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt index 399d1871a..f8cf40944 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt @@ -50,10 +50,11 @@ import com.nextcloud.talk.models.json.conversations.Conversation import com.nextcloud.talk.models.json.conversations.Conversation.ConversationType import com.nextcloud.talk.ui.StatusDrawable import com.nextcloud.talk.ui.theme.ViewThemeUtils +import com.nextcloud.talk.utils.CapabilitiesUtil.hasSpreedFeatureCapability import com.nextcloud.talk.utils.SpreedFeatures import com.nextcloud.talk.utils.ConversationUtils import com.nextcloud.talk.utils.DisplayUtils -import com.nextcloud.talk.utils.CapabilitiesUtil.hasSpreedFeatureCapability + import eu.davidea.flexibleadapter.FlexibleAdapter import eu.davidea.flexibleadapter.items.AbstractFlexibleItem import eu.davidea.flexibleadapter.items.IFilterable diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt index 0006a9bc1..855030f2d 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt @@ -47,6 +47,7 @@ import com.nextcloud.talk.utils.ApiUtils import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_INTERNAL_USER_ID import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN import com.nextcloud.talk.utils.CapabilitiesUtil +import com.nextcloud.talk.utils.SpreedFeatures import io.reactivex.Observer import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable @@ -107,7 +108,7 @@ class ConversationsListBottomDialog( private fun initItemsVisibility() { val hasFavoritesCapability = CapabilitiesUtil.hasSpreedFeatureCapability( currentUser.capabilities?.spreedCapability!!, - "favorites" + SpreedFeatures.FAVORITES ) val canModerate = conversation.canModerate(currentUser) @@ -120,17 +121,15 @@ class ConversationsListBottomDialog( binding.conversationMarkAsRead.visibility = setVisibleIf( conversation.unreadMessages > 0 && CapabilitiesUtil.hasSpreedFeatureCapability( - currentUser - .capabilities?.spreedCapability!!, - "chat-read-marker" + currentUser.capabilities?.spreedCapability!!, + SpreedFeatures.CHAT_READ_MARKER ) ) binding.conversationMarkAsUnread.visibility = setVisibleIf( conversation.unreadMessages <= 0 && CapabilitiesUtil.hasSpreedFeatureCapability( - currentUser - .capabilities?.spreedCapability!!, - "chat-unread" + currentUser.capabilities?.spreedCapability!!, + SpreedFeatures.CHAT_UNREAD ) ) diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt index b30099e81..1eb448614 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt @@ -106,7 +106,7 @@ class MessageActionsDialog( private val isMessageEditable = CapabilitiesUtil.hasSpreedFeatureCapability( spreedCapabilities, - "edit-messages" + SpreedFeatures.EDIT_MESSAGES ) && messageHasRegularText && !isOlderThanTwentyFourHours && isUserAllowedToEdit override fun onCreate(savedInstanceState: Bundle?) { @@ -166,7 +166,7 @@ class MessageActionsDialog( ) initMenuRemindMessage( !message.isDeleted && CapabilitiesUtil.hasSpreedFeatureCapability - (spreedCapabilities, "remind-me-later") + (spreedCapabilities, SpreedFeatures.REMIND_ME_LATER) ) initMenuMarkAsUnread( message.previousMessageId > NO_PREVIOUS_MESSAGE_ID && diff --git a/app/src/main/java/com/nextcloud/talk/utils/ApiUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/ApiUtils.kt index dc496b21d..82092a00c 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/ApiUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/ApiUtils.kt @@ -156,17 +156,17 @@ object ApiUtils { val spreedCapabilities = user.capabilities!!.spreedCapability for (version in versions) { if (spreedCapabilities != null) { - if (hasSpreedFeatureCapability(spreedCapabilities, "signaling-v$version")) { + if (spreedCapabilities.features!!.contains("signaling-v$version")) { return version } if (version == API_V2 && - hasSpreedFeatureCapability(spreedCapabilities, "sip-support") && - !hasSpreedFeatureCapability(spreedCapabilities, "signaling-v3") + hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.SIP_SUPPORT) && + !hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.SIGNALING_V3) ) { return version } if (version == API_V1 && - !hasSpreedFeatureCapability(spreedCapabilities, "signaling-v3") + !hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.SIGNALING_V3) ) { // Has no capability, we just assume it is always there when there is no v3 or later return version @@ -180,7 +180,7 @@ object ApiUtils { @Throws(NoSupportedApiException::class) fun getChatApiVersion(spreedCapabilities: SpreedCapability, versions: IntArray): Int { for (version in versions) { - if (version == API_V1 && hasSpreedFeatureCapability(spreedCapabilities, "chat-v2")) { + if (version == API_V1 && hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.CHAT_V2)) { // Do not question that chat-v2 capability shows the availability of api/v1/ endpoint *see no evil* return version } 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 d58cf1bf5..1fa30e884 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt @@ -52,7 +52,20 @@ enum class SpreedFeatures(val value: String) { TEMP_USER_AVATAR_API("temp-user-avatar-api"), PHONEBOOK_SEARCH("phonebook-search"), GEO_LOCATION_SHARING("geo-location-sharing"), - TALK_POLLS("talk-polls") + TALK_POLLS("talk-polls"), + FAVORITES("favorites"), + CHAT_READ_MARKER("chat-read-marker"), + CHAT_UNREAD("chat-unread"), + EDIT_MESSAGES("edit-messages"), + REMIND_ME_LATER("remind-me-later"), + CHAT_V2("chat-v2"), + SIP_SUPPORT("sip-support"), + SIGNALING_V3("signaling-v3"), + ROOM_DESCRIPTION("room-description"), + UNIFIED_SEARCH("unified-search"), + LOCKED_ONE_TO_ONE("locked-one-to-one-rooms"), + CHAT_PERMISSION("chat-permission"), + CONVERSATION_PERMISSION("conversation-permissions") } @Suppress("TooManyFunctions") @@ -89,15 +102,6 @@ object CapabilitiesUtil { return false } - @JvmStatic - @Deprecated("Add your capability to Capability enums and use hasSpreedFeatureCapability with enum.") - fun hasSpreedFeatureCapability(spreedCapabilities: SpreedCapability, capabilityName: String): Boolean { - if (spreedCapabilities.features != null) { - return spreedCapabilities.features!!.contains(capabilityName) - } - return false - } - fun getMessageMaxLength(spreedCapabilities: SpreedCapability): Int { if (spreedCapabilities.config?.containsKey("chat") == true) { val chatConfigHashMap = spreedCapabilities.config!!["chat"] @@ -147,11 +151,11 @@ object CapabilitiesUtil { } fun isConversationDescriptionEndpointAvailable(spreedCapabilities: SpreedCapability): Boolean { - return hasSpreedFeatureCapability(spreedCapabilities, "room-description") + return hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.ROOM_DESCRIPTION) } fun isUnifiedSearchAvailable(spreedCapabilities: SpreedCapability): Boolean { - return hasSpreedFeatureCapability(spreedCapabilities, "unified-search") + return hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.UNIFIED_SEARCH) } fun isAbleToCall(spreedCapabilities: SpreedCapability): Boolean { 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 0c48e0ede..8b180ce9f 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt @@ -45,7 +45,7 @@ object ConversationUtils { fun isLockedOneToOne(conversation: ConversationModel, spreedCapabilities: SpreedCapability): Boolean { return conversation.type == ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL && - CapabilitiesUtil.hasSpreedFeatureCapability(spreedCapabilities, "locked-one-to-one-rooms") + CapabilitiesUtil.hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.LOCKED_ONE_TO_ONE) } fun canModerate(conversation: ConversationModel, spreedCapabilities: SpreedCapability): Boolean { 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 829991b5a..a33d5c2ba 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/ParticipantPermissions.kt @@ -53,7 +53,7 @@ class ParticipantPermissions( private fun hasConversationPermissions(): Boolean { return CapabilitiesUtil.hasSpreedFeatureCapability( spreedCapabilities, - "conversation-permissions" + SpreedFeatures.CONVERSATION_PERMISSION ) } @@ -90,7 +90,7 @@ class ParticipantPermissions( } fun hasChatPermission(): Boolean { - if (CapabilitiesUtil.hasSpreedFeatureCapability(spreedCapabilities, "chat-permission")) { + if (CapabilitiesUtil.hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.CHAT_PERMISSION)) { return hasChatPermission } // if capability is not available then the spreed version doesn't support to restrict this diff --git a/app/src/main/java/com/nextcloud/talk/utils/preferences/preferencestorage/DatabaseStorageModule.java b/app/src/main/java/com/nextcloud/talk/utils/preferences/preferencestorage/DatabaseStorageModule.java index 8652a99be..c8edc2763 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/preferences/preferencestorage/DatabaseStorageModule.java +++ b/app/src/main/java/com/nextcloud/talk/utils/preferences/preferencestorage/DatabaseStorageModule.java @@ -34,6 +34,7 @@ import com.nextcloud.talk.data.storage.model.ArbitraryStorage; import com.nextcloud.talk.data.user.model.User; import com.nextcloud.talk.models.json.generic.GenericOverall; import com.nextcloud.talk.utils.ApiUtils; +import com.nextcloud.talk.utils.SpreedFeatures; import com.nextcloud.talk.utils.UserIdUtils; import com.nextcloud.talk.utils.CapabilitiesUtil; @@ -158,8 +159,10 @@ public class DatabaseStorageModule { }); } else if ("conversation_info_message_notifications_dropdown".equals(key)) { - if (CapabilitiesUtil.hasSpreedFeatureCapability(conversationUser.getCapabilities().getSpreedCapability(), "notification" + - "-levels")) { + if (CapabilitiesUtil.hasSpreedFeatureCapability( + conversationUser.getCapabilities().getSpreedCapability(), + SpreedFeatures.NOTIFICATION_LEVELS) + ) { if (TextUtils.isEmpty(messageNotificationLevel) || !messageNotificationLevel.equals(value)) { int intValue; switch (value) { From a74c8c552da7977d83a118a5b7af06c427ef3080 Mon Sep 17 00:00:00 2001 From: Julius Linus Date: Wed, 28 Feb 2024 10:43:10 -0600 Subject: [PATCH 03/25] Popup bubbles now show up + Fixed bugs with images + added new string resource Signed-off-by: Julius Linus --- .../com/nextcloud/talk/chat/ChatActivity.kt | 52 +++++++++---------- .../talk/chat/viewmodels/ChatViewModel.kt | 4 +- .../ConversationsListActivity.kt | 2 +- app/src/main/res/values/strings.xml | 1 + 4 files changed, 30 insertions(+), 29 deletions(-) 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 77ec8f886..ae9e06c6d 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -193,7 +193,7 @@ import com.nextcloud.talk.ui.recyclerview.MessageSwipeActions import com.nextcloud.talk.ui.recyclerview.MessageSwipeCallback import com.nextcloud.talk.utils.ApiUtils import com.nextcloud.talk.utils.AudioUtils -import com.nextcloud.talk.utils.SpreedFeatures +import com.nextcloud.talk.utils.CapabilitiesUtil import com.nextcloud.talk.utils.ContactUtils import com.nextcloud.talk.utils.ConversationUtils import com.nextcloud.talk.utils.DateConstants @@ -206,6 +206,7 @@ import com.nextcloud.talk.utils.MagicCharPolicy import com.nextcloud.talk.utils.Mimetype import com.nextcloud.talk.utils.NotificationUtils import com.nextcloud.talk.utils.ParticipantPermissions +import com.nextcloud.talk.utils.SpreedFeatures import com.nextcloud.talk.utils.UriUtils import com.nextcloud.talk.utils.VibrationUtils import com.nextcloud.talk.utils.bundle.BundleKeys @@ -220,7 +221,6 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_START_CALL_AFTER_ROOM_SWITCH import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_SWITCH_TO_ROOM -import com.nextcloud.talk.utils.CapabilitiesUtil import com.nextcloud.talk.utils.database.user.CurrentUserProviderNew import com.nextcloud.talk.utils.permissions.PlatformPermissionUtil import com.nextcloud.talk.utils.rx.DisposableSet @@ -832,11 +832,11 @@ class ChatActivity : when (state.response.code()) { HTTP_CODE_OK -> { Log.d(TAG, "lookIntoFuture: ${state.lookIntoFuture}") + val chatOverall = state.response.body() as ChatOverall? + var chatMessageList = chatOverall?.ocs!!.data!! processHeaderChatLastGiven(state.response, state.lookIntoFuture) - val chatOverall = state.response.body() as ChatOverall? - var chatMessageList = chatOverall?.ocs!!.data!! chatMessageList = handleSystemMessages(chatMessageList) if (chatMessageList.size == 0) { @@ -861,15 +861,7 @@ class ChatActivity : adapter?.notifyDataSetChanged() } - var lastAdapterId = 0 - if (adapter?.items?.size != 0) { - val item = adapter?.items?.get(0)?.item - if (item != null) { - lastAdapterId = (item as ChatMessage).jsonMessageId - } else { - lastAdapterId = 0 - } - } + var lastAdapterId = getLastAdapterId() if ( state.lookIntoFuture && @@ -898,24 +890,24 @@ class ChatActivity : } HTTP_CODE_NOT_MODIFIED -> { - processHeaderChatLastGiven(state.response, state.lookIntoFuture) chatViewModel.refreshChatParams( setupFieldsForPullChatMessages( - state.lookIntoFuture, + true, globalLastKnownFutureMessageId, true - ) + ), + true ) } HTTP_CODE_PRECONDITION_FAILED -> { - processHeaderChatLastGiven(state.response, state.lookIntoFuture) chatViewModel.refreshChatParams( setupFieldsForPullChatMessages( - state.lookIntoFuture, + true, globalLastKnownFutureMessageId, true - ) + ), + true ) } @@ -1226,6 +1218,19 @@ class ChatActivity : ) } + private fun getLastAdapterId(): Int { + var lastId = 0 + if (adapter?.items?.size != 0) { + val item = adapter?.items?.get(0)?.item + if (item != null) { + lastId = (item as ChatMessage).jsonMessageId + } else { + lastId = 0 + } + } + return lastId + } + private fun setEditUI() { binding.messageInputView.messageSendButton.visibility = View.GONE binding.messageInputView.recordAudioButton.visibility = View.GONE @@ -3703,8 +3708,7 @@ class ChatActivity : } private fun processMessagesFromTheFuture(chatMessageList: List) { - val shouldAddNewMessagesNotice = (adapter?.itemCount ?: 0) > 0 && chatMessageList.isNotEmpty() - + val shouldAddNewMessagesNotice = layoutManager?.findFirstVisibleItemPosition()!! > 0 if (shouldAddNewMessagesNotice) { val unreadChatMessage = ChatMessage() unreadChatMessage.jsonMessageId = -1 @@ -3715,10 +3719,6 @@ class ChatActivity : } addMessagesToAdapter(shouldAddNewMessagesNotice, chatMessageList) - - if (shouldAddNewMessagesNotice && adapter != null) { - scrollToFirstUnreadMessage() - } } private fun processMessagesNotFromTheFuture(chatMessageList: List) { @@ -3791,7 +3791,7 @@ class ChatActivity : } private fun modifyMessageCount(shouldAddNewMessagesNotice: Boolean, shouldScroll: Boolean) { - if (!shouldAddNewMessagesNotice && !shouldScroll) { + if (shouldAddNewMessagesNotice) { binding.popupBubbleView.isShown.let { if (it) { newMessagesCount++ diff --git a/app/src/main/java/com/nextcloud/talk/chat/viewmodels/ChatViewModel.kt b/app/src/main/java/com/nextcloud/talk/chat/viewmodels/ChatViewModel.kt index fadbe677b..df5be648c 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/viewmodels/ChatViewModel.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/viewmodels/ChatViewModel.kt @@ -178,8 +178,8 @@ class ChatViewModel @Inject constructor( val editMessageViewState: LiveData get() = _editMessageViewState - fun refreshChatParams(pullChatMessagesFieldMap: HashMap) { - if (pullChatMessagesFieldMap != _getFieldMapForChat.value) { + fun refreshChatParams(pullChatMessagesFieldMap: HashMap, overrideRefresh: Boolean = false) { + if (pullChatMessagesFieldMap != _getFieldMapForChat.value || overrideRefresh) { _getFieldMapForChat.postValue(pullChatMessagesFieldMap) Log.d(TAG, "FieldMap Refreshed with $pullChatMessagesFieldMap vs ${_getFieldMapForChat.value}") } 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 858f77fb7..add7201ae 100644 --- a/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt @@ -322,7 +322,7 @@ class ConversationsListActivity : } is ConversationsListViewModel.GetFederationInvitationsErrorState -> { - Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show() + Snackbar.make(binding.root, R.string.get_invitations_error, Snackbar.LENGTH_LONG).show() } else -> {} diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e10f7d2fa..8825496fa 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -800,4 +800,5 @@ How to translate with transifex: "Edited by " clear Edit Button Edit Icon + Failed to fetch pending invitations From c3df93938227757b5a9dffbe61e4368018f9e9d0 Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Wed, 6 Mar 2024 07:02:59 +0000 Subject: [PATCH 04/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-ar/strings.xml | 5 ++--- app/src/main/res/values-b+en+001/strings.xml | 5 ++--- app/src/main/res/values-bg-rBG/strings.xml | 3 --- app/src/main/res/values-ca/strings.xml | 3 --- app/src/main/res/values-cs-rCZ/strings.xml | 3 --- app/src/main/res/values-da/strings.xml | 2 -- app/src/main/res/values-de/strings.xml | 5 ++--- app/src/main/res/values-el/strings.xml | 3 --- app/src/main/res/values-es-rEC/strings.xml | 3 --- app/src/main/res/values-es/strings.xml | 3 --- app/src/main/res/values-eu/strings.xml | 3 --- app/src/main/res/values-fa/strings.xml | 3 --- app/src/main/res/values-fi-rFI/strings.xml | 3 --- app/src/main/res/values-fr/strings.xml | 5 ++--- app/src/main/res/values-gl/strings.xml | 3 --- app/src/main/res/values-hr/strings.xml | 3 --- app/src/main/res/values-hu-rHU/strings.xml | 3 --- app/src/main/res/values-is/strings.xml | 2 -- app/src/main/res/values-it/strings.xml | 3 --- app/src/main/res/values-ja-rJP/strings.xml | 3 --- app/src/main/res/values-ko/strings.xml | 3 --- app/src/main/res/values-lt-rLT/strings.xml | 2 -- app/src/main/res/values-nb-rNO/strings.xml | 5 ++--- app/src/main/res/values-nl/strings.xml | 3 --- app/src/main/res/values-pl/strings.xml | 3 --- app/src/main/res/values-pt-rBR/strings.xml | 5 ++--- app/src/main/res/values-ru/strings.xml | 5 ++--- app/src/main/res/values-sc/strings.xml | 3 --- app/src/main/res/values-sk-rSK/strings.xml | 13 ++++++++++--- app/src/main/res/values-sl/strings.xml | 3 --- app/src/main/res/values-sr/strings.xml | 5 ++--- app/src/main/res/values-sv/strings.xml | 2 -- app/src/main/res/values-tr/strings.xml | 3 --- app/src/main/res/values-uk/strings.xml | 3 --- app/src/main/res/values-zh-rCN/strings.xml | 3 --- app/src/main/res/values-zh-rHK/strings.xml | 5 ++--- app/src/main/res/values-zh-rTW/strings.xml | 5 ++--- 37 files changed, 30 insertions(+), 107 deletions(-) diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 6ad612ec9..99c18adae 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -114,8 +114,6 @@ تحقق من الشهادة إعدادات SSL الخاص بك تمنع الاتصال تغيير شهادة المصادقة - الدائرة Circle - الدوائر Circles محو زر التحرير محو تحرير الرسالة مسح جميع الرسائل @@ -341,10 +339,10 @@ في وضعية تعطل المايكرفون، علق على الزر & لاستخدام اضغط للتحدث ذكرني لاحقا الصَّوت القصِي remote موقوف - حذف الدائرة circle و الأعضاء إزالتها مِن المفضلة حذف المجموعة group و الأعضاء حذف مشارك + إزالة الفريق و الأعضاء إعادة تسمية المحادثة تغيير تسمية رد @@ -467,6 +465,7 @@ رتِّب حسب وقت البدء تبديل الحساب + الفِرَق اختر الملفات إرسال هذه الملفات إلى %1$s؟ إرسال هذا الملف إلى %1$s؟ diff --git a/app/src/main/res/values-b+en+001/strings.xml b/app/src/main/res/values-b+en+001/strings.xml index 0fee7ffed..826fbdc5a 100644 --- a/app/src/main/res/values-b+en+001/strings.xml +++ b/app/src/main/res/values-b+en+001/strings.xml @@ -114,8 +114,6 @@ Check out the certificate Your SSL setup prevented connection Change authentication certificate - Circle - Circles clear Edit Button Clear Edit Message Delete all messages @@ -341,10 +339,10 @@ With the microphone disabled, click&hold to use Press-to-transmit Remind me later Remote audio off - Remove circle and members Remove from favourites Remove group and members Remove participant + Remove team and members Rename conversation Rename Reply @@ -467,6 +465,7 @@ Sort by Start time Switch account + Teams Choose files Send these files to %1$s? Send this file to %1$s? diff --git a/app/src/main/res/values-bg-rBG/strings.xml b/app/src/main/res/values-bg-rBG/strings.xml index e3a23f371..6c5d94ca0 100644 --- a/app/src/main/res/values-bg-rBG/strings.xml +++ b/app/src/main/res/values-bg-rBG/strings.xml @@ -91,8 +91,6 @@ Провери сертификата Вашата настройка на SSL, предотврати връзката Променете сертификата за удостоверяване - Кръг - Кръгове Изтриване на всички съобщения Всички съобщения бяха изтрити Сигурни ли сте, че искате да изтриете всички съобщения в този разговор? @@ -258,7 +256,6 @@ Когато микрофонът е деактивиран, кликнете & и задръжте, за да използвате „Натисни и говори“ Напомни ми по-късно Отдалеченото аудио е изключено - Премахване на кръга и на членовете Премахни от любимите Премахване на групата и на членовете Премахване на участник diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index c6ad81b8a..87f231021 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -91,8 +91,6 @@ Verifica el certificat La vostra configuració SSL ha impedit la connexió Canvia el certificat d’autenticació - Cercle - Cercles Suprimeix tots els missatges S\'han suprimit tots els missatges Segur que voleu suprimir tots els missatges d\'aquesta conversa? @@ -258,7 +256,6 @@ Amb el micròfon desactivat, feu clic a & i mantingueu-lo pressionat per fer servir el Prem-i-parla Recorda-m\'ho més tard Àudio remot desactivat - Suprimeix el cercle i els membres Suprimeix de favorits Suprimeix el grup i els membres Suprimeix el participant diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml index edd18499f..7deafca60 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -110,8 +110,6 @@ Zkontrolovat certifikát Vaše nastavení SSL zabránilo připojení Změnit certifikát sloužící pro ověřování se - Okruh - Okruhy Smazat všechny zprávy Všechny zprávy byly vymazány Opravdu chcete všechny zprávy v této konverzaci smazat? @@ -304,7 +302,6 @@ Při vypnutém mikrofonu, klikněte a dokud držíte, můžete mluvit – jako u vysílačky Připomenout později Ztlumení mikrofonu na dálku - Odebrat kruh a členy Odebrat z oblíbených Odebrat skupinu a její členy Odebrat účastníka diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml index dd404d4dc..bde7c192a 100644 --- a/app/src/main/res/values-da/strings.xml +++ b/app/src/main/res/values-da/strings.xml @@ -51,8 +51,6 @@ Tjek certifikatet Din SSL indstilling forhindrede forbindelse Skift godkendelsescertifikat - Cirkel - Cirkler Alle beskeder blev slettet Skift kliencertifikat Indstil klientcertifikat diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index c9413bd43..371d9f241 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -114,8 +114,6 @@ Überprüfen Sie das Zertifikat Ihre SSL-Konfiguration hat die Verbindung verhindert Authentifizierungs-Zertifikat ändern - Kreis - Kreise Schaltfläche „Bearbeiten“ löschen Bearbeitungsnachricht löschen Alle Nachrichten löschen @@ -341,10 +339,10 @@ Bei deaktiviertem Mikrofon &drücken. Halten Sie zum Senden die Sprechtaste gedrückt (Funkgerät-Modus) Erinnere mich später Entferntes Audio aus - Kreis und Mitglieder entfernen Von Favoriten entfernen Gruppe und Mitglieder entfernen Teilnehmer entfernen + Team und Mitglieder entfernen Unterhaltung umbenennen Umbenennen Antworten @@ -467,6 +465,7 @@ Sortiere nach Startzeit Konto wechseln + Teams Dateien auswählen Diese Dateien an %1$s senden? Diese Datei an %1$s senden? diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 35485a071..90d3e56bc 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -70,8 +70,6 @@ Ελέγξτε το πιστοποιητικό Η ρύθμιση SSL απέτρεψε την σύνδεση Αλλαγή πιστοποιητικού πιστοποίησης - Κύκλος - Κύκλοι Διαγραφή όλων των μηνυμάτων Όλα τα μηνύματα διαγράφηκαν Θέλετε πραγματικά να διαγράψετε όλα τα μηνύματα σε αυτήν τη συνομιλία; @@ -215,7 +213,6 @@ Push-to-talk Με απενεργοποιημένο το μικρόφωνο, πιέστε και κρατήστε το & για χρήση του Push-to-talk Θύμισέ μου αργότερα - Αφαίρεση κύκλων και μελών Αφαίρεση από τα αγαπημένα Αφαίρεση ομάδων και μελών Αφαίρεση συμμετέχοντα diff --git a/app/src/main/res/values-es-rEC/strings.xml b/app/src/main/res/values-es-rEC/strings.xml index 246424aac..3b579217f 100644 --- a/app/src/main/res/values-es-rEC/strings.xml +++ b/app/src/main/res/values-es-rEC/strings.xml @@ -95,8 +95,6 @@ Verifica el certificado Tu configuración de SSL impidió la conexión Cambiar el certificado de atuenticación - Círculo - Círculos Borrar todos los mensajes Todos los mensajes se han eliminado ¿Realmente quieres borrar todos los mensajes de esta conversación? @@ -269,7 +267,6 @@ Con el microfono deshabilitado, haz click & presiona para usar Presiona-para-hablar Recuérdame más tarde Audio remoto desactivado - Eliminar círculo y miembros Eliminar de favoritos Eliminar grupo y miembros Eliminar participante diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 6c756a1ec..4159ae27d 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -110,8 +110,6 @@ Comprobar el certificado Tu configuración SSL impidió la conexión Cambiar certificado de autenticación - Círculo - Círculos Borrar todos los mensajes Se han eliminado todos los mensajes ¿Seguro que quieres borrar todos los mensajes en esta conversación? @@ -327,7 +325,6 @@ Con el micrófono deshabilitado, mantén pulsado & para usar Push-to-talk Recuérdamelo más tarde Audio remoto apagado - Eliminar círculo y miembros Eliminar de favoritos Eliminar grupo y miembros Eliminar participante diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml index b5b79f658..d45714048 100644 --- a/app/src/main/res/values-eu/strings.xml +++ b/app/src/main/res/values-eu/strings.xml @@ -108,8 +108,6 @@ Egiaztatu ziurtagiria Zure SSL konfigurazioak konexioa eragotzi du Aldatu autentifikazio ziurtagiria - Zirkulua - Zirkuluak Ezabatu mezu guztiak Mezu guztiak ezabatu dira Ziur zaude elkarrizketa honen mezu guztiak ezabatu nahi dituzula? @@ -295,7 +293,6 @@ Mikrofonoa desgaituta daukazunean, egin klik &mantendu sakatzerakoan hitz egiteko Gogoratu geroago Urruneko audioa itzalita - Kendu taldea eta kideak Kendu gogokoetatik Kendu taldea eta kideak Kendu parte-hartzailea diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index 38a14fb54..98c3e7cfb 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -99,8 +99,6 @@ گواهی را بررسی کنید راه اندازی SSL شما مانع از اتصال شد گواهی تأیید اعتبار را تغییر دهید - حلقه - حلقه ها حذف تمام پیام‌ها تمام پیام‌ها حذف شدند آیا واقعا می‌خواهید تمام پیام‌ها را در این مکالمه حذف کنید؟ @@ -280,7 +278,6 @@ با غیر فعال کردن میکروفن، برای استفاده از Push-to-talk کلیک & نگه‌داشتن را انجام دهید بعدا به من یادآوری کن Remote audio off - Remove circle and members حذف کردن از مورد علاقه‌ها Remove group and members شرکت کننده را حذف کنید diff --git a/app/src/main/res/values-fi-rFI/strings.xml b/app/src/main/res/values-fi-rFI/strings.xml index f3a80e798..e04decb17 100644 --- a/app/src/main/res/values-fi-rFI/strings.xml +++ b/app/src/main/res/values-fi-rFI/strings.xml @@ -69,8 +69,6 @@ Tarkista varmenne SSL-asetukset esti yhteyden Vaihda tunnistautumisvarmenne - Piiri - Piirit Poista kaikki viestit Kaikki viestit poistettiin Haluatko varmasti poistaa kaikki viestit tästä keskustelusta? @@ -214,7 +212,6 @@ Push-ilmoitukset pois käytöstä Paina puhuaksesi Muistuta myöhemmin - Poista piiri ja jäsenet Poista suosikeista Poista ryhmä ja jäsenet Poista osallistuja diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 18cae9dfb..cd7a8b815 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -112,8 +112,6 @@ Vérifier le certificat Votre configuration SSL a empêché la connexion Modifier le certificat d\'authentification - Cercle - Cercles effacer le bouton de modification Supprimer tous les messages Tous les messages ont été supprimés @@ -311,10 +309,10 @@ Avec le micro désactivé, cliquez & maintenez pour utiliser la fonction Talkie-walkie. Rappelez-moi plus tard Audio distant en sourdine - Supprimer le cercle et ses membres Retirer des favoris Supprimer un groupe et ses membres Retirer le participant + Supprimer l\'équipe et ses membres Renommer la conversation Renommer Répondre @@ -432,6 +430,7 @@ Trier par Heure de début Changer de compte + Équipes Choisir des fichiers Envoyer ces fichiers à %1$s ? Envoyer ce fichier à %1$s ? diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml index a60925431..28234db51 100644 --- a/app/src/main/res/values-gl/strings.xml +++ b/app/src/main/res/values-gl/strings.xml @@ -108,8 +108,6 @@ Verificar o certificado A súa configuración SSL impediu a conexión Cambiar o certificado de autenticación - Círculo - Círculos Eliminar todas as mensaxes Elimináronse todas as mensaxes Confirma que quere eliminar todas as mensaxes desta conversa? @@ -293,7 +291,6 @@ Co microfono desactivado, prema e manteña para usar a función «Prema para falar» Lembrarmo más adiante Son remoto desactivado - Retirar círculo e membros Retirar de favoritos Retirar grupo e membros Retirar participante diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml index 9c7005567..72902e323 100644 --- a/app/src/main/res/values-hr/strings.xml +++ b/app/src/main/res/values-hr/strings.xml @@ -72,8 +72,6 @@ Pogledaj vjerodajnicu Vezu je onemogućila vaša postavka SSL-a Promijeni vjerodajnicu za autentifikaciju - Krug - Krugovi Izbriši sve poruke Izbrisane su sve poruke Želite li zaista izbrisati sve poruke u ovom razgovoru? @@ -217,7 +215,6 @@ Kada je mikrofon onemogućen, kliknite i držite za uporabu značajke Pritisni za govor Podsjeti me kasnije Udaljeno isključivanje zvuka - Ukloni krug i članove Ukloni iz favorita Ukloni grupu i članove Ukloni sudionika diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml index dc995bfc2..c2f9e37e8 100644 --- a/app/src/main/res/values-hu-rHU/strings.xml +++ b/app/src/main/res/values-hu-rHU/strings.xml @@ -103,8 +103,6 @@ Ellenőrizze a tanúsítványt Az SSL beállítás megakadályozta a kapcsolódást Hitelesítési tanúsítvány módosítása - Kör - Körök Összes üzenet törlése Az összes üzenet törölve lett Biztos, hogy törli a beszélgetés összes üzenetét? @@ -283,7 +281,6 @@ A mikrofon le lesz tiltva, a beszédhez tartsa lenyomva Emlékeztessen később Távoli hang kikapcsolása - Kör és tagok eltávolítása Eltávolítás a kedvencekből Csoport és tagok eltávolítása Résztvevő eltávolítása diff --git a/app/src/main/res/values-is/strings.xml b/app/src/main/res/values-is/strings.xml index f04b8cf9c..bb9407a83 100644 --- a/app/src/main/res/values-is/strings.xml +++ b/app/src/main/res/values-is/strings.xml @@ -52,8 +52,6 @@ Sannreyna skilríkið SSL-uppsetningin þín kom í veg fyrir tengingu Skipta um skilríki fyrir auðkenningu - Hringur - Hringir Skipta um skilríki biðlara Setja upp skilríki biðlara Afrita diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index e9da6e300..c15d75215 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -85,8 +85,6 @@ Controlla il certificato La tua configurazione SSL ha impedito la connessione Cambia certificato di autenticazione - Cerchia - Cerchie Elimina tutti i messaggi Tutti i messaggi sono stati eliminati Vuoi davvero eliminare tutti i messaggi in questa conversazione? @@ -239,7 +237,6 @@ Con il microfono disabilitato, fai clic e mantieni per utilizzare Premi per parlare Ricordamelo più tardi Audio remoto spento - Rimuovi cerchia e membri Rimuovi dai preferiti Rimuovi gruppo e membri Rimuovi partecipante diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index 2ef8b8f06..59fda9c77 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -81,8 +81,6 @@ 証明書をチェックアウトする SSL設定で接続が妨げられました 認証証明書を変更する - サークル - サークル すべてのメッセージを削除 すべてのメッセージが削除されたました。 本当にこの会話の全てのメッセージを削除してもよろしいですか? @@ -234,7 +232,6 @@ マイクを無効にして、プッシュツートークを使用する場合は & ホールド 後で通知する リモート音声オフ - サークルとメンバーを削除 お気に入りから削除 メンバーとグループを削除 参加者を削除 diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index d8e8fa3fd..381ebefd9 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -87,8 +87,6 @@ 인증서 확인 SSL 설정에서 연결을 거부함 인증서 변경 - 서클 - 서클 모든 메시지 삭제 모든 메시지가 삭제되었습니다. 이 대화에서 모든 메시지를 삭제하시겠습니까? @@ -250,7 +248,6 @@ 마이크가 비활성화된 상태에서 &를 누르고 있으면 눌러 말하기 사용 나중에 다시 알림 원격 오디오 끄기 - 서클과 구성원 제거 즐겨찾기에서 제거 Remove group and members 참가자 삭제 diff --git a/app/src/main/res/values-lt-rLT/strings.xml b/app/src/main/res/values-lt-rLT/strings.xml index 803cf2ef2..4871044be 100644 --- a/app/src/main/res/values-lt-rLT/strings.xml +++ b/app/src/main/res/values-lt-rLT/strings.xml @@ -55,8 +55,6 @@ Ar pasitikite iki šiol nežinomu SSL liudijimu, kurį išdavė %1$s, kuris skirtas %2$s ir galioja nuo %3$s iki %4$s? Jūsų SSL sąranka neleido ryšio Keisti tapatybės nustatymo liudijimą - Ratas - Ratai Keisti kliento programėlės liudijimą Nustatyti kliento programėlės liudijimą ir diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index a2f55ecb0..8274c0dff 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -114,8 +114,6 @@ Sjekk sertifikatet Ditt SSL-oppsett forhindret tilkobling Endre sertifikat for autentisering - Sirkel - Sirkler tøm redigeringsknapp Fjern redigeringsmelding Slett alle meldinger @@ -341,10 +339,10 @@ Med mikrofonen avslått, klikk & hold for å bruke klikk-for-å-snakke Påminnn meg senere Ekstern lyd av - Fjern sirkel og medlemmer Fjern fra favoritter Fjern gruppe og medlemmer Fjern deltaker + Fjern lag og medlemmer Endre navn på samtale Endre navn Svar @@ -467,6 +465,7 @@ Sorter etter Start tidspunkt Bytt konto + Lag Velg filer Sende disse filene til %1$s? Sende denne filen til %1$s? diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 28fb4cdd2..25a77fa99 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -85,8 +85,6 @@ Controleer het certificaat Je SSL-instellingen blokkeerden de verbinding Authenticatiecertificaat veranderen - Kring - Kringen Alle berichten verwijderen Alle berichten zijn verwijderd Wil je echt dit alle andere berichten in dit gesprek echt verwijderen? @@ -240,7 +238,6 @@ Kies er eentje van een provider. Met uitgeschakelde microfoon, klik&indrukken om Druk-om-te-praten te gebruiken Herinner me later Externe audio uit - Verwijderen kring en leden Verwijderen uit favorieten Verwijderen groep en leden Verwijder deelnemer diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 36a0289f9..4fe3a209e 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -108,8 +108,6 @@ Sprawdź certyfikat Twoje ustawienia SSL uniemożliwiają połaczenie Zmień certyfikat uwierzytelnienia - Krąg - Kręgi Usuń wszystkie wiadomości Wszystkie wiadomości zostały usunięte Czy na pewno chcesz usunąć wszystkie wiadomości z tej rozmowy? @@ -293,7 +291,6 @@ Gdy mikrofon jest wyłączony, kliknij i przytrzymaj, aby użyć funkcji \"Naciśnij i mów\" Przypomnij mi później Zdalne wyłączenie dźwięku - Usuń krąg i członków Usuń z ulubionych Usuń grupę i członków Usuń uczestnika diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index f384c6bd3..86a9c5140 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -109,8 +109,6 @@ Confira o certificado Sua configuração SSL impediu a conexão Alterar certificado de autenticação - Círculo - Círculos Excluir todas as mensagens Todas as mensagens foram apagadas Tem certeza de que deseja excluir todas as mensagens desta conversa? @@ -295,10 +293,10 @@ Com o microfone desativado, clique& para usar Pressione-para-falar Lembre-me mais tarde Áudio remoto desligado - Remover círculo e membros Remover dos favoritos Remover grupo e membros Excluir participante + Remover equipe e membros Renomear conversa Renomear Responder @@ -415,6 +413,7 @@ Ordenar por Hora de início Mudar de conta + Equipes Escolher arquivos Enviar estes arquivos para %1$s? Enviar este arquivo para %1$s? diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index b9091f301..bb8ff9b07 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -102,8 +102,6 @@ Проверьте сертификат Заданные параметры SSL не позволяют подключиться Изменить сертификат для подтверждения подлинности - Круг - Круги Удалить все сообщения Все сообщения были удалены Вы действительно хотите удалить все сообщения в этой беседе? @@ -275,10 +273,10 @@ Нажмите и удерживайте для использования PTT при отключённом микрофоне Напомнить позже Отключить звук удалённо - Удалить Круг и его учатников Удалить из избранного Удалить группу и её участников Удалить участника + Исключить команду и её участников Переименовать разговор Переименовать Ответить @@ -394,6 +392,7 @@ Сортировать по Время начала Сменить аккаунт + Команды Выберите файлы Отправить эти файлы %1$s? Отправить этот файл %1$s? diff --git a/app/src/main/res/values-sc/strings.xml b/app/src/main/res/values-sc/strings.xml index f183d9aa6..07729af2e 100644 --- a/app/src/main/res/values-sc/strings.xml +++ b/app/src/main/res/values-sc/strings.xml @@ -68,8 +68,6 @@ Controlla su tzertificadu Sa cunfiguratzione SSL at refudadu sa connessione Càmbia tzertificadu autenticatzione - Giru - Giros Cantzella totu is messàgios Cantzellados totu is messàgios A beru boles cantzellare totu is messàgios in custa resonada? @@ -207,7 +205,6 @@ Cun su micròfonu disativadu, mantene incarcadu&pro impreare su cumandu de trasmissione Regorda•mi•ddu a coa Àudiu remotu istudadu - Boga·nche giru e partetzipantes Boga dae preferidos Boga·nche grupu e partetzipantes Boga·nche partetzipante diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index ade4b76ad..d270a85c7 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -1,6 +1,7 @@ Ikona účtu + Pridať do poznámok Pridať konverzáciu %1$s k obľúbeným Hľadať v %s Audio hovor @@ -20,8 +21,11 @@ Vyčistiť správu o stave Vyčistiť správu o stave po Zatvoriť + Zamknúť nahrávanie pre nepretržité nahrávanie hlasovej správy + Konverzácia je iba na čítanie Konverzácie Vytvoriť konverzáciu + Vytvoriť problém Vlastný Nebezpečná oblasť Zmazať avatara @@ -29,6 +33,8 @@ Nerušiť Nemazať Upraviť + Nemôžete upravovať správy staršie ako 24 hodín. + Upraviť ikonu správy Spätná lomka Nedávne Šifrované @@ -38,7 +44,10 @@ Načítavam … %1$s (%2$d) 4 hodiny + (editované) Neviditeľný + Jazyky sa nedali získať + Získanie zlyhalo Neskôr dnes Opustili ste konverzáciu %1$s Načítať viac výsledkov @@ -53,6 +62,7 @@ Z - A Najväčšie prvé Najmenšie prvé + Vypršanie platnosti správy Klepnutím otvoríte anketu Žiadne výsledky vyhľadávania Začnite písať pre vyhľadanie … @@ -101,8 +111,6 @@ Skontrolujte certifikát Vaša konfigurácia SSL zabránila pripojeniu Zmeniť autentifikačný certifikát - Kruh - Kruhy Vymazať všetky správy Všetky správy boli vymazané Naozaj chcete vymazať všetky správy v tejto konverzácii? @@ -280,7 +288,6 @@ S vypnutým mikrofónom, kliknite &podržte pre použitie funkcie Stlač a hovor PTT Pripomenúť neskôr Vypnúť vzdialené audio - Vymazať kruh a členov Odstrániť z obľúbených Odobrať skupinu a členov Odobrať účastníka diff --git a/app/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml index 386cee6cd..b088597b8 100644 --- a/app/src/main/res/values-sl/strings.xml +++ b/app/src/main/res/values-sl/strings.xml @@ -93,8 +93,6 @@ Preveri potrdilo Nastavitve SSL onemogočajo vzpostavitev povezave Spremeni potrdilo za overitev - Krog - Krogi Izbriši vsa sporočila Vsa sporočilo so izbrisana Ali res želite izbrisati vsa sporočila tega pogovora? @@ -262,7 +260,6 @@ Pri onemogočenem mikrofonu lahko za začetek govora kliknete in zadržite gumb Opomni me kasneje Oddaljen zvok je onemogočen - Odstrani krog in člane Odstrani iz priljubljenih Odstrani skupino in člane Odstrani udeležence diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index b68305360..18e5a2472 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -114,8 +114,6 @@ Провери сертификат Ваша ССЛ постава је онемогућила повезивање Измени сертификат за пријаву - Круг - Кругови Обриши дугме за уређивање Обриши Уреди поруку Обриши све поруке @@ -341,10 +339,10 @@ Са онемогућеним микрофоном, кликните & држите да користите притисак за разговор Подсети ме касније Удаљени аудио је искључен - Уклони круг и чланове Уклони из омиљених Уклони групу и чланове Уклони учесника + Уклони тим и чланове Преименуј разговор Преименуј Одговори @@ -467,6 +465,7 @@ Разврстај Време почетка Пребаци налог + Тимови Изаберите фајлове Да ли да пошаљем ове фајлове %1$s? Да ли да пошаљем овај фајл %1$s? diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index a64401170..b7728ec20 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -62,8 +62,6 @@ Kontrollera certifikatet Dina SSL-inställningar förhindrade anslutning Ändra autentiseringscertifikat - Cirkel - Cirklar Radera alla meddelanden Ändra klientcertifikat Konfigurera klientcertifikat diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index b8aaa6448..b2ec81759 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -111,8 +111,6 @@ Sertifikayı denetleyin SSL kurulumunuz bağlantı kurulmasını engelliyor Kimlik doğrulama sertifikasını değiştir - Çevre - Çevreler Tüm iletileri sil Tüm iletiler silindi Bu görüşmedeki tüm iletileri silmek istediğinize emin misiniz? @@ -328,7 +326,6 @@ Mikrofon devre dışı iken, Bas-konuş üzerine tıklayıp basılı tutun Sonra hatırlat Uzak ses kapalı - Çevreyi ve üyelerini sil Sık kullanılanlardan kaldır Grup ve üyelerini sil Katılımcıyı çıkar diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index e9c883e3c..d681528c5 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -93,8 +93,6 @@ Перевірка сертифікату Ваші налаштування SSL завадили з’єднанню Змінити сертифікат авторизації - Коло - Кола Вилучити усі повідомлення Всі повідомлення видалено Ви дійсно бажаєте вилучити усі повідомлення у цій розмові? @@ -258,7 +256,6 @@ Натисніть і утримуйте & для використання PTT при вимкненому мікрофоні Нагадати пізніше Віддалене аудіо відключено - Вилучити кола та учасників Вилучено з улюбленого Вилучити групи та учасників Вилучити учасника diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index c9bfbaf1b..ac1753ed6 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -105,8 +105,6 @@ 检查证书 您的 SSL 设置阻止了连接 更换验证证书 - 圈子 - 圈子 删除所有消息 已删除所有消息 你真想删除对话中的所有信息吗? @@ -289,7 +287,6 @@ 禁用麦克风的情况下,点击&并按住使用“按键讲话”功能 以后提醒我 远程音频关闭 - 删除圈子和成员 取消收藏 移除群组和成员 移除参与者 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 5f6bffbd4..682992135 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -114,8 +114,6 @@ 請檢查憑證 您的SSL設定阻擋這連線。 更改驗證證書 - 社交圈子 - 圈子 清除編輯按鈕 清除編輯訊息 刪除所有訊息 @@ -341,10 +339,10 @@ 在停用米高風的情況下,單擊並按住即可使用一鍵通 稍後提醒我 遠端語音關閉 - 移除社交圈子及組員 取消我的最愛 移除群組及組員 移除參與者 + 移除團隊和成員 重新命名對話 重新命名 回覆 @@ -467,6 +465,7 @@ 排序方式 開始時間 切換賬戶 + 團隊 選擇檔案 將這些檔案發送到 %1$s? 將此檔案發送到 %1$s? diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index a61c8fae6..c95c6c476 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -114,8 +114,6 @@ 請檢查憑證 您的SSL設定阻擋這連線。 變更驗證憑證 - 圈子 - 圈子 清除編輯按鈕 清除編輯訊息 刪除所有訊息 @@ -341,10 +339,10 @@ 在停用麥克風的情況下,點擊並按住即可使用按住以說話 稍後提醒我 遠端音訊關閉 - 移除小圈圈與成員 取消我的最愛 移除群組與成員 移除參與者 + 移除團隊與成員 重新命名對話 重新命名 回覆 @@ -467,6 +465,7 @@ 排序 開始時間 切換帳號 + 團隊 選擇檔案 傳送這些檔案給 %1$s? 傳送檔案給 %1$s? From 1a1b61c5c465c8953a01cda822548984f11557e4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 6 Mar 2024 19:09:18 +0000 Subject: [PATCH 05/25] fix(deps): update androidxcameraversion to v1.3.2 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- app/build.gradle | 2 +- gradle/verification-metadata.xml | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 98b3ade9b..e56ff988e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -141,7 +141,7 @@ android { } ext { - androidxCameraVersion = "1.3.1" + androidxCameraVersion = "1.3.2" coilKtVersion = "2.6.0" daggerVersion = "2.51" emojiVersion = "1.4.0" diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index f19603e4c..9893b7a14 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -138,7 +138,10 @@ - + + + + From fb6b070273906de96855e5326731bfb5d3977c48 Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Thu, 7 Mar 2024 02:54:08 +0000 Subject: [PATCH 06/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-ar/strings.xml | 2 ++ app/src/main/res/values-b+en+001/strings.xml | 2 ++ app/src/main/res/values-de/strings.xml | 2 ++ app/src/main/res/values-fr/strings.xml | 2 ++ app/src/main/res/values-nb-rNO/strings.xml | 2 ++ app/src/main/res/values-zh-rHK/strings.xml | 2 ++ app/src/main/res/values-zh-rTW/strings.xml | 2 ++ 7 files changed, 14 insertions(+) diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 99c18adae..af97bc583 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -44,6 +44,7 @@ التحميل جارٍ … %1$s (%2$d) 4 ساعات + تعذّر جلب الدعوات المعلقة (مُعدّلة) غير مرئي تعذّرت استعادة اللغات @@ -465,6 +466,7 @@ رتِّب حسب وقت البدء تبديل الحساب + الفريق الفِرَق اختر الملفات إرسال هذه الملفات إلى %1$s؟ diff --git a/app/src/main/res/values-b+en+001/strings.xml b/app/src/main/res/values-b+en+001/strings.xml index 826fbdc5a..8b44b013b 100644 --- a/app/src/main/res/values-b+en+001/strings.xml +++ b/app/src/main/res/values-b+en+001/strings.xml @@ -44,6 +44,7 @@ Loading … %1$s (%2$d) 4 hours + Failed to fetch pending invitations (edited) Invisible Languages could not be retrieved @@ -465,6 +466,7 @@ Sort by Start time Switch account + Team Teams Choose files Send these files to %1$s? diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 371d9f241..ac6bde177 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -44,6 +44,7 @@ Lade … %1$s (%2$d) 4 Stunden + Ausstehende Einladungen konnten nicht abgerufen werden (Bearbeitet) Unsichtbar Sprachen konnten nicht abgerufen werden @@ -465,6 +466,7 @@ Sortiere nach Startzeit Konto wechseln + Team Teams Dateien auswählen Diese Dateien an %1$s senden? diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index cd7a8b815..58353a7e9 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -42,6 +42,7 @@ Chargement… %1$s (%2$d) 4 heures + Échec de la récupération des invitations en attente (modifié) Invisible Les langues n\'ont pas pu être récupérées @@ -430,6 +431,7 @@ Trier par Heure de début Changer de compte + Équipe Équipes Choisir des fichiers Envoyer ces fichiers à %1$s ? diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index 8274c0dff..a7411cc85 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -44,6 +44,7 @@ Laster ... %1$s (%2$d) 4 timer + Henting av ventende invitasjoner feilet (redigert) Usynlig Språk kunne ikke hentes @@ -465,6 +466,7 @@ Sorter etter Start tidspunkt Bytt konto + Lag Lag Velg filer Sende disse filene til %1$s? diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 682992135..923d3b440 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -44,6 +44,7 @@ 加載中 … %1$s(%2$d) 4 小時 + 無法擷取待定的邀請 (已編輯) 隱藏 無法擷取語言 @@ -465,6 +466,7 @@ 排序方式 開始時間 切換賬戶 + 團隊 團隊 選擇檔案 將這些檔案發送到 %1$s? diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index c95c6c476..c869531bf 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -44,6 +44,7 @@ 正在載入…… %1$s (%2$d) 4小時 + 擷取擱置中的邀請失敗 (已編輯) 隱藏 無法擷取語言 @@ -465,6 +466,7 @@ 排序 開始時間 切換帳號 + 團隊 團隊 選擇檔案 傳送這些檔案給 %1$s? From dec22a5bb4b37c93a2238776ad2db8b29753b4fd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Mar 2024 08:34:11 +0000 Subject: [PATCH 07/25] fix(deps): update kotlin monorepo to v1.9.23 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 69572c225..8f88dc8f2 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ buildscript { ext { - kotlinVersion = '1.9.22' + kotlinVersion = '1.9.23' } repositories { From d4d0d625bbfc9b819e224fb99cc273299ba4af77 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 7 Mar 2024 10:09:25 +0000 Subject: [PATCH 08/25] fix(deps): update media3_version to v1.3.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- app/build.gradle | 2 +- gradle/verification-metadata.xml | 70 ++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index 98b3ade9b..ae2ab0554 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -156,7 +156,7 @@ ext { roomVersion = "2.6.1" workVersion = "2.9.0" espressoVersion = "3.5.1" - media3_version = "1.2.1" + media3_version = "1.3.0" } configurations.configureEach { diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index f19603e4c..e3f8dc5a0 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -111,6 +111,7 @@ + @@ -903,6 +904,14 @@ + + + + + + + + @@ -911,6 +920,14 @@ + + + + + + + + @@ -919,6 +936,14 @@ + + + + + + + + @@ -927,6 +952,14 @@ + + + + + + + + @@ -935,6 +968,14 @@ + + + + + + + + @@ -943,6 +984,14 @@ + + + + + + + + @@ -951,6 +1000,14 @@ + + + + + + + + @@ -959,6 +1016,14 @@ + + + + + + + + @@ -2851,6 +2916,11 @@ + + + + + From 57ec680d416115253dcffe50c4bcba43334df5ad Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Fri, 8 Mar 2024 02:44:28 +0000 Subject: [PATCH 09/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-ca/strings.xml | 1 + app/src/main/res/values-sk-rSK/strings.xml | 2 ++ app/src/main/res/values-sr/strings.xml | 2 ++ app/src/main/res/values-tr/strings.xml | 8 ++++++++ 4 files changed, 13 insertions(+) diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index 87f231021..d26e84945 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -372,6 +372,7 @@ Ordena per Hora d\'inici Canvia el compte + Equip Trieu els fitxers Voleu enviar aquests fitxers a %1$s? Voleu enviar aquest fitxer a %1$s? diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index d270a85c7..a00c66b12 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -159,6 +159,7 @@ Nastavenia batérie. Zariadenie Telefón + Verzia servera Talk /Rozhovor/ Externý Interné Neplatné heslo @@ -405,6 +406,7 @@ Zoradiť podľa Čas začiatku Prepnúť účet + Tím Vyberte súbory Poslať tieto súbory do %1$s? Poslať tento súbor do %1$s? diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index 18e5a2472..c942621d3 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -44,6 +44,7 @@ Учитавање… %1$s (%2$d) 4 сата + Није успело добављање позивница на чекању (уређено) Невидљива Није успело преузимање језика @@ -465,6 +466,7 @@ Разврстај Време почетка Пребаци налог + Тим Тимови Изаберите фајлове Да ли да пошаљем ове фајлове %1$s? diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index b2ec81759..87c535be0 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -22,6 +22,7 @@ Durum iletisinin kaldırılma süresi Kapat Sesli iletinin sürekli olarak kaydedilmesi için kaydı kilitleyin + Görüşme sadece okunabilir. Görüşmeler Görüşme oluştur Sorun ekle @@ -32,6 +33,8 @@ Rahatsız etmeyin Kaldırılmasın Düzenle + 24 saat öncesine ait mesajları düzenleyemezsiniz. + Düzenleme İleti Simgesi Geriye silme Son kullanılan Şifrelenmiş @@ -41,6 +44,7 @@ Yükleniyor… %1$s (%2$d) 4 saat + Tamamlanamayan davetiyeleri al ve beklet (düzenlendi) Görünmez Diller alınamadı @@ -111,6 +115,8 @@ Sertifikayı denetleyin SSL kurulumunuz bağlantı kurulmasını engelliyor Kimlik doğrulama sertifikasını değiştir + Düzenleme Butonunu temizle + İletiyi düzenle Tüm iletileri sil Tüm iletiler silindi Bu görüşmedeki tüm iletileri silmek istediğinize emin misiniz? @@ -134,6 +140,7 @@ Görüşme bilgileri Görüntülü çağrı Sesli çağrı + Görüşme bulunamadı Bir görüşmeye katılın ya da yeni bir görüşme başlatın Tanıdık ve çalışma arkadaşlarınıza selam verin! Kopyala @@ -203,6 +210,7 @@ Evet Görüntülenecek ad alınamadı, vazgeçiliyor Görüntülenecek ad kaydedilemedi, vazgeçiliyor + Düzenle simgesi Düzenle E-posta 8 saat From da0dc5f6ef942c703209ab17f05473164afea108 Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Sat, 9 Mar 2024 03:11:52 +0000 Subject: [PATCH 10/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-ca/strings.xml | 1 + app/src/main/res/values-pt-rBR/strings.xml | 54 ++++++++++++++++++++++ app/src/main/res/values-sk-rSK/strings.xml | 5 ++ app/src/main/res/values-sv/strings.xml | 1 + 4 files changed, 61 insertions(+) diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index d26e84945..981b08fa1 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -373,6 +373,7 @@ Hora d\'inici Canvia el compte Equip + Equips Trieu els fitxers Voleu enviar aquests fitxers a %1$s? Voleu enviar aquest fitxer a %1$s? diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 86a9c5140..97dbf47fe 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1,6 +1,7 @@ Ícone da conta + Adicionar às Notas Conversa adicionada %1$s para favoritos Pesquisar em %s Chamada de áudio @@ -21,8 +22,10 @@ Limpar mensagem de status após Fechar Gravação de bloqueio para gravação contínua da mensagem de voz + A conversa é somente leitura Conversas Criando conversa + Criar problema Personalizar Zona de perigo Excluir avatar @@ -30,6 +33,8 @@ Não perturbe Não limpe Editar + Não é possível editar mensagens com mais de 24 horas + Editar ícone de mensagem Retroceder Recente Criptografado @@ -39,6 +44,7 @@ Carregando … %1$s (%2$d) 4 horas + Falha ao buscar convites pendentes (editado) Invisível Não foi possível recuperar os idiomas @@ -109,6 +115,8 @@ Confira o certificado Sua configuração SSL impediu a conexão Alterar certificado de autenticação + limpar botão Editar + Limpar Editar Mensagem Excluir todas as mensagens Todas as mensagens foram apagadas Tem certeza de que deseja excluir todas as mensagens desta conversa? @@ -132,6 +140,7 @@ Informação da conversa Chamada de vídeo Chamada de voz + Conversa não encontrada Junte-se a uma conversa ou inicie uma nova Diga olá para seus amigos e colegas! Copiar @@ -150,16 +159,43 @@ Enviar mensagem Conta atual Servidor + Aplicativo de notificação do servidor instalado? Usuário + Status do usuário ativado? Versão do Android Aplicativo Nome do aplicativo Usuários registrados + Versão do aplicativo + A otimização da bateria é ignorada, tudo bem + A otimização da bateria não é ignorada. Isso deveria ser mudado! Configurações da bateria Dispositivo + Abrir lista de verificação de solução de problemas + Abrir tela de diagnóstico + Abra dontkillmyapp.com + Última busca de token push do Firebase + Última geração de token push do Firebase + Nenhum token push do Firebase definido. Por favor, crie um relatório de bug. + Token de envio do Firebase + Os serviços do Google Play não estão disponíveis. Notificações não são suportadas + Serviços do Google Play + Os serviços do Google Play estão disponíveis + Último registro push no push proxy + Ainda não registrado no push proxy + Último registro push no servidor + Ainda não cadastrado no servidor + Meta informação + Geração de relatório do sistema + Canal de notificação de chamadas ativado? + Canal de notificação de mensagens ativado? + Permissões de notificação Celular + Versão do Server Talk + Versão do servidor Externo Interno + Modo de sinalização Senha inválida Modo de manutenção O servidor está atualmente em modo de manutenção. @@ -174,7 +210,11 @@ Sim Nome de exibição não obtido, interrompendo Não foi possível armazenar o nome de exibição, cancelando + Editar ícone Editar + Editar texto da mensagem + Editado por + Editado pelo administrador E-mail 8 horas 4 semanas @@ -187,6 +227,9 @@ Falha ao buscar configurações de sinalização Aceitar Rejeitar + de %1$s em%2$s + Nenhum convite pendente + Você tem convites pendentes Voltar É necessária permissão para acessar o arquivo Filter Conversations @@ -214,6 +257,8 @@ Os convites foram enviados novamente. Compartilhar o link da conversa Digite uma mensagem … + A otimização da bateria não é ignorada. Isso deve ser alterado para garantir que as notificações funcionem em segundo plano! Clique em OK e selecione \"Todos os aplicativos\" -> %1$s -> Não otimizar + Ignorar a otimização da bateria Conversa importante As notificações nesta conversa substituirão as configurações de Não perturbe Convites @@ -265,6 +310,8 @@ Enviados Notificar sobre o progresso do envio do arquivo Configurações de notificação + A permissão de notificação e as configurações da bateria estão configuradas corretamente para receber notificações. Se você tiver problemas para receber notificações mesmo assim, verifique se os canais de notificação para chamadas e mensagens estão habilitados. Mais ajuda pode ser encontrada em DontKillMyApp.com ou na lista de verificação de solução de problemas. Se isso não ajudar, vá para a tela de diagnóstico e envie um relatório de bug. + Solução de problemas de notificação Sempre notificar Notificar quando mencionado Nunca notificar @@ -314,6 +361,7 @@ Pesquisar Selecionar uma conta Selecionar participantes + Enviar Editar Mensagem %1$s enviou um GIF. Você enviou um GIF. %1$s enviou um vídeo. @@ -349,12 +397,17 @@ Avançada Aparência Chamadas + Abra a tela de diagnóstico para verificar as configurações ou criar um relatório de bug + Diagnóstico Instrui o teclado para desativar o aprendizado personalizado (sem garantias) Teclado incógnito Sem som O aplicativo Talk não está instalado no servidor em que você tentou se autenticar Sons de notificação Notificações + As notificações foram recusadas + As notificações são recusadas. Permita notificações nas configurações do Android + As notificações são concedidas Mensagens Combine os contatos com base no número de telefone para integrar o atalho do Bate Papo no aplicativo de contatos do sistema Erro 429 Muitas Solicitações @@ -413,6 +466,7 @@ Ordenar por Hora de início Mudar de conta + Equipe Equipes Escolher arquivos Enviar estes arquivos para %1$s? diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index a00c66b12..0980c883d 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -407,6 +407,7 @@ Čas začiatku Prepnúť účet Tím + Tímy Vyberte súbory Poslať tieto súbory do %1$s? Poslať tento súbor do %1$s? @@ -462,6 +463,10 @@ Zastaviť nahrávanie hovoru Zastaviť nahrávanie Zastavujem nahrávanie... + Súhlas so záznamom je potrebný pre všetky hovory. + Vyžadovať súhlas so záznamom pred pripojením hovoru v tejto konverzácii + Súhlas so záznamom + Hovor môže byť zaznamenaný. Záznam Konverzácia %1$s bola odstránená z obľúbených Konverzácia %1$s bola premenovaná diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index b7728ec20..b5605992f 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -285,6 +285,7 @@ Sortera efter Starttid Växla konto + Team Ladda upp från enheten Laddar upp Ta en bild From 62230245ebbe8339fd1a5c86ea3c5c7b449204db Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Sat, 9 Mar 2024 13:31:04 +0100 Subject: [PATCH 11/25] Add SPDX header from sync Signed-off-by: Andy Scherzinger --- .github/workflows/pr-feedback.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/pr-feedback.yml b/.github/workflows/pr-feedback.yml index 0e7359dec..4d365e6e4 100644 --- a/.github/workflows/pr-feedback.yml +++ b/.github/workflows/pr-feedback.yml @@ -3,6 +3,13 @@ # https://github.com/nextcloud/.github # https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors +# SPDX-FileCopyrightText: 2023 Marcel Klehr +# SPDX-FileCopyrightText: 2023 Joas Schilling <213943+nickvergessen@users.noreply.github.com> +# SPDX-FileCopyrightText: 2023 Daniel Kesselberg +# SPDX-FileCopyrightText: 2023 Florian Steffens +# SPDX-License-Identifier: MIT + name: 'Ask for feedback on PRs' on: schedule: From 7dc7c9c99cbe674385bb37fd40521a05a9f93e61 Mon Sep 17 00:00:00 2001 From: rakekniven <2069590+rakekniven@users.noreply.github.com> Date: Sat, 9 Mar 2024 15:19:06 +0100 Subject: [PATCH 12/25] fix(i18n): Fixed case of word Reported at Transifex Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com> --- app/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 8825496fa..51dde20a9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -791,7 +791,7 @@ How to translate with transifex: Send Edit Message Clear Edit Message Cannot Edit Messages older than 24 hours - Conversation is read Only + Conversation is read only Edit Message Text (edited) Conversation not found From e7ef618119115b2c4ae26a0993f5c4f1b5d75f1e Mon Sep 17 00:00:00 2001 From: parneet-guraya Date: Thu, 29 Feb 2024 23:19:13 +0530 Subject: [PATCH 13/25] fix filter dialog Signed-off-by: parneet-guraya --- .../ConversationsListActivity.kt | 5 +-- .../ui/dialog/FilterConversationFragment.kt | 31 ++++++++++++------- 2 files changed, 21 insertions(+), 15 deletions(-) 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 add7201ae..1c6d1142e 100644 --- a/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt @@ -978,10 +978,7 @@ class ConversationsListActivity : updateFilterConversationButtonColor() binding.filterConversationsButton.setOnClickListener { - val newFragment: DialogFragment = FilterConversationFragment.newInstance( - filterState, - this - ) + val newFragment = FilterConversationFragment.newInstance(filterState) newFragment.show(supportFragmentManager, FilterConversationFragment.TAG) } diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt index a990a0c81..8f31c1fbf 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt @@ -20,6 +20,7 @@ package com.nextcloud.talk.ui.dialog import android.app.Dialog +import android.os.Build import android.os.Bundle import android.view.LayoutInflater import android.view.View @@ -38,14 +39,10 @@ import com.nextcloud.talk.utils.UserIdUtils import javax.inject.Inject @AutoInjector(NextcloudTalkApplication::class) -class FilterConversationFragment( - savedFilterState: MutableMap, - conversationsListActivity: ConversationsListActivity -) : DialogFragment() { +class FilterConversationFragment : DialogFragment() { lateinit var binding: DialogFilterConversationBinding private var dialogView: View? = null - private var filterState = savedFilterState - private var conversationsList = conversationsListActivity + private lateinit var filterState: HashMap @Inject lateinit var userManager: UserManager @@ -58,7 +55,11 @@ class FilterConversationFragment( override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { binding = DialogFilterConversationBinding.inflate(LayoutInflater.from(context)) dialogView = binding.root - + filterState = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + arguments?.getSerializable(FILTER_STATE_ARG, HashMap::class.java) as HashMap + } else { + arguments?.getSerializable(FILTER_STATE_ARG) as HashMap + } return MaterialAlertDialogBuilder(requireContext()).setView(dialogView).create() } @@ -120,15 +121,23 @@ class FilterConversationFragment( arbitraryStorageManager.storeStorageSetting(accountId, MENTION, mentionValue.toString(), "") arbitraryStorageManager.storeStorageSetting(accountId, UNREAD, unreadValue.toString(), "") - conversationsList.filterConversation() + (requireActivity() as ConversationsListActivity).filterConversation() } companion object { + private const val FILTER_STATE_ARG = "FILTER_STATE_ARG" + @JvmStatic fun newInstance( - savedFilterState: MutableMap, - conversationsListActivity: ConversationsListActivity - ) = FilterConversationFragment(savedFilterState, conversationsListActivity) + savedFilterState: MutableMap + ): FilterConversationFragment { + val filterConversationFragment = FilterConversationFragment() + val args = Bundle() + args.putSerializable(FILTER_STATE_ARG, HashMap(savedFilterState)) + filterConversationFragment.arguments = args + return filterConversationFragment + } + val TAG: String = FilterConversationFragment::class.java.simpleName const val MENTION: String = "mention" const val UNREAD: String = "unread" From 3866beed924e19e77244f936ec4c225b6203a7be Mon Sep 17 00:00:00 2001 From: parneet-guraya Date: Fri, 1 Mar 2024 00:00:59 +0530 Subject: [PATCH 14/25] fix remind me later dialog Signed-off-by: parneet-guraya --- .../com/nextcloud/talk/chat/ChatActivity.kt | 7 +- .../talk/ui/dialog/DateTimePickerFragment.kt | 42 +- .../ui/dialog/FilterConversationFragment.kt | 4 +- .../res/layout/dialog_date_time_picker.xml | 360 +++++++++--------- 4 files changed, 211 insertions(+), 202 deletions(-) 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 ae9e06c6d..0a138b2a5 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -4259,12 +4259,7 @@ class ChatActivity : val chatApiVersion = ApiUtils.getChatApiVersion(spreedCapabilities, intArrayOf(ApiUtils.API_V1, 1)) - val newFragment: DialogFragment = DateTimePickerFragment.newInstance( - roomToken, - message!!.id, - chatViewModel, - chatApiVersion - ) + val newFragment: DialogFragment = DateTimePickerFragment.newInstance(roomToken, message!!.id, chatApiVersion) newFragment.show(supportFragmentManager, DateTimePickerFragment.TAG) } diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/DateTimePickerFragment.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/DateTimePickerFragment.kt index 65afc1888..209bd3690 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/DateTimePickerFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/DateTimePickerFragment.kt @@ -37,6 +37,7 @@ import com.google.android.material.timepicker.TimeFormat import com.nextcloud.android.common.ui.theme.utils.ColorRole import com.nextcloud.talk.R import com.nextcloud.talk.application.NextcloudTalkApplication +import com.nextcloud.talk.chat.ChatActivity import com.nextcloud.talk.chat.viewmodels.ChatViewModel import com.nextcloud.talk.databinding.DialogDateTimePickerBinding import com.nextcloud.talk.ui.theme.ViewThemeUtils @@ -47,18 +48,15 @@ import javax.inject.Inject @Suppress("TooManyFunctions") @AutoInjector(NextcloudTalkApplication::class) -class DateTimePickerFragment( - token: String, - id: String, - chatViewModel: ChatViewModel, - private val chatApiVersion: Int -) : DialogFragment() { +class DateTimePickerFragment : DialogFragment() { + lateinit var binding: DialogDateTimePickerBinding private var dialogView: View? = null - private var viewModel = chatViewModel + private lateinit var viewModel: ChatViewModel private var currentTimeStamp: Long? = null - private var roomToken = token - private var messageId = id + private lateinit var roomToken: String + private lateinit var messageId: String + private var chatApiVersion: Int = -1 private var laterTodayTimeStamp = 0L private var tomorrowTimeStamp = 0L private var weekendTimeStamp = 0L @@ -73,6 +71,12 @@ class DateTimePickerFragment( override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { binding = DialogDateTimePickerBinding.inflate(LayoutInflater.from(context)) dialogView = binding.root + viewModel = (requireActivity() as ChatActivity).chatViewModel + arguments?.let { + roomToken = it.getString(TOKEN_ARG, "") + messageId = it.getString(ID_ARG, "") + chatApiVersion = it.getInt(CHAT_API_VERSION_ARG) + } return MaterialAlertDialogBuilder(requireContext()).setView(dialogView).create() } @@ -304,14 +308,20 @@ class DateTimePickerFragment( private const val ONE_SEC = 1000 private const val HOUR_EIGHT_AM = 8 private const val HOUR_SIX_PM = 18 + private const val TOKEN_ARG = "TOKEN_ARG" + private const val ID_ARG = "ID_ARG" + private const val CHAT_API_VERSION_ARG = "CHAT_API_VERSION_ARG" @JvmStatic - fun newInstance(token: String, id: String, chatViewModel: ChatViewModel, chatApiVersion: Int) = - DateTimePickerFragment( - token, - id, - chatViewModel, - chatApiVersion - ) + fun newInstance(token: String, id: String, chatApiVersion: Int): DateTimePickerFragment { + val args = Bundle() + args.putString(TOKEN_ARG, token) + args.putString(ID_ARG, id) + args.putInt(CHAT_API_VERSION_ARG, chatApiVersion) + + val dateTimePickerFragment = DateTimePickerFragment() + dateTimePickerFragment.arguments = args + return dateTimePickerFragment + } } } diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt index 8f31c1fbf..d4a61f9e5 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/FilterConversationFragment.kt @@ -128,9 +128,7 @@ class FilterConversationFragment : DialogFragment() { private const val FILTER_STATE_ARG = "FILTER_STATE_ARG" @JvmStatic - fun newInstance( - savedFilterState: MutableMap - ): FilterConversationFragment { + fun newInstance(savedFilterState: MutableMap): FilterConversationFragment { val filterConversationFragment = FilterConversationFragment() val args = Bundle() args.putSerializable(FILTER_STATE_ARG, HashMap(savedFilterState)) diff --git a/app/src/main/res/layout/dialog_date_time_picker.xml b/app/src/main/res/layout/dialog_date_time_picker.xml index 2fd1e51a6..96d21a382 100644 --- a/app/src/main/res/layout/dialog_date_time_picker.xml +++ b/app/src/main/res/layout/dialog_date_time_picker.xml @@ -17,202 +17,208 @@ ~ You should have received a copy of the GNU General Public License ~ along with this program. If not, see . --> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:orientation="vertical"> + android:layout_margin="@dimen/standard_margin" + android:orientation="horizontal"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + android:text="@string/set" /> + + - - - - - - \ No newline at end of file + \ No newline at end of file From 11a7764badeff588aef1d9f7fc6b78ba02c88961 Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Tue, 12 Mar 2024 02:44:05 +0000 Subject: [PATCH 15/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-ar/strings.xml | 1 - app/src/main/res/values-b+en+001/strings.xml | 1 - app/src/main/res/values-de/strings.xml | 1 - app/src/main/res/values-fr/strings.xml | 1 - app/src/main/res/values-nb-rNO/strings.xml | 1 - app/src/main/res/values-pt-rBR/strings.xml | 1 - app/src/main/res/values-sk-rSK/strings.xml | 2 +- app/src/main/res/values-sr/strings.xml | 1 - app/src/main/res/values-tr/strings.xml | 1 - app/src/main/res/values-zh-rHK/strings.xml | 1 - app/src/main/res/values-zh-rTW/strings.xml | 1 - 11 files changed, 1 insertion(+), 11 deletions(-) diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index af97bc583..b83cafc74 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -22,7 +22,6 @@ إمسح رسالة الحالة فيما بعدٌ إغلاق قَفْل التسجيل للتسجيل المستمر للرسالة الصوتية - المحادثة للقراءة فقط محادثات انشاء محادثة تكوين إشكالية diff --git a/app/src/main/res/values-b+en+001/strings.xml b/app/src/main/res/values-b+en+001/strings.xml index 8b44b013b..2a8249a26 100644 --- a/app/src/main/res/values-b+en+001/strings.xml +++ b/app/src/main/res/values-b+en+001/strings.xml @@ -22,7 +22,6 @@ Clear status message after Close Lock recording for continuously recording of the voice message - Conversation is read Only Conversations Create conversation Create issue diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index ac6bde177..10eec6b81 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -22,7 +22,6 @@ Statusmeldung löschen nach Schließen Aufnahme sperren für kontinuierliche Aufzeichnung der Sprachnachricht - Unterhaltung ist schreibgeschützt Unterhaltungen Unterhaltung erstellen Fehler melden diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 58353a7e9..11589f3ec 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -22,7 +22,6 @@ Effacer le message d\'état après Fermer Verrouiller l\'enregistrement pour enregistrer en continu le message vocal - La conversation est en lecture seule Discussions Créer la conversation Personnalisé diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index a7411cc85..7903b1fb4 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -22,7 +22,6 @@ Fjern statusmelding etter Lukk Lås opptak for kontinuerlig opptak av talemeldingen - Denne samtalen er skrivebeskyttet Samtaler Opprett samtale Opprett problem diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 97dbf47fe..972eb59cd 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -22,7 +22,6 @@ Limpar mensagem de status após Fechar Gravação de bloqueio para gravação contínua da mensagem de voz - A conversa é somente leitura Conversas Criando conversa Criar problema diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index 0980c883d..c20a53e47 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -22,7 +22,6 @@ Vyčistiť správu o stave po Zatvoriť Zamknúť nahrávanie pre nepretržité nahrávanie hlasovej správy - Konverzácia je iba na čítanie Konverzácie Vytvoriť konverzáciu Vytvoriť problém @@ -292,6 +291,7 @@ Odstrániť z obľúbených Odobrať skupinu a členov Odobrať účastníka + Odstrániť tím a členov. Premenovať konverzáciu Premenovať Odpoveď diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index c942621d3..3b277c132 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -22,7 +22,6 @@ Обриши статусну поруку након Затвори Закључајте снимање да би се гласовна порука непрестано снимала. - Овај разговор је само-за-читање Разговори Креирај разговор Креирај проблем diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 87c535be0..84669aac3 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -22,7 +22,6 @@ Durum iletisinin kaldırılma süresi Kapat Sesli iletinin sürekli olarak kaydedilmesi için kaydı kilitleyin - Görüşme sadece okunabilir. Görüşmeler Görüşme oluştur Sorun ekle diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 923d3b440..587eeedfd 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -22,7 +22,6 @@ 繼此之後清空狀態訊息 關閉 鎖定錄音以連續錄製語音訊息 - 對話是唯讀 對話 建立對話 創建問題 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index c869531bf..802285df7 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -22,7 +22,6 @@ 在……之後清空狀態訊息 關閉 鎖定錄音以連續錄製語音訊息 - 對話是唯讀 對話 建立對話 建立問題 From 625de657d4fc57a622022d61a7049a5fbe9e7884 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Thu, 7 Mar 2024 15:24:29 +0100 Subject: [PATCH 16/25] hide features if federation is not available + add capability queries (not yet used) Signed-off-by: Marcel Hibbe --- .../com/nextcloud/talk/chat/ChatActivity.kt | 14 +++++++------- .../ConversationsListActivity.kt | 14 ++++++-------- .../talk/ui/dialog/MessageActionsDialog.kt | 8 +++++--- .../nextcloud/talk/utils/CapabilitiesUtil.kt | 17 ++++++++++++++++- 4 files changed, 34 insertions(+), 19 deletions(-) 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 0a138b2a5..a56be07a7 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -601,6 +601,7 @@ class ChatActivity : spreedCapabilities = state.spreedCapabilities chatApiVersion = ApiUtils.getChatApiVersion(spreedCapabilities, intArrayOf(1)) + invalidateOptionsMenu() initMessageInputView() if (conversationUser?.userId != "?" && @@ -3923,17 +3924,16 @@ class ChatActivity : val searchItem = menu.findItem(R.id.conversation_search) searchItem.isVisible = CapabilitiesUtil.isUnifiedSearchAvailable(spreedCapabilities) - if (CapabilitiesUtil.hasSpreedFeatureCapability( - spreedCapabilities, - SpreedFeatures.RICH_OBJECT_LIST_MEDIA - ) + if (currentConversation!!.remoteServer != null || + !CapabilitiesUtil.isSharedItemsAvailable(spreedCapabilities) ) { - conversationSharedItemsItem = menu.findItem(R.id.shared_items) - } else { menu.removeItem(R.id.shared_items) } - if (CapabilitiesUtil.isAbleToCall(spreedCapabilities)) { + if (currentConversation!!.remoteServer != null) { + menu.removeItem(R.id.conversation_video_call) + menu.removeItem(R.id.conversation_voice_call) + } else if (CapabilitiesUtil.isAbleToCall(spreedCapabilities)) { conversationVoiceCallMenuItem = menu.findItem(R.id.conversation_voice_call) conversationVideoMenuItem = menu.findItem(R.id.conversation_video_call) 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 1c6d1142e..4df674671 100644 --- a/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/conversationlist/ConversationsListActivity.kt @@ -754,15 +754,13 @@ class ConversationsListActivity : } private fun fetchPendingInvitations() { - binding.conversationListHintInclude.conversationListHintLayout.setOnClickListener { - val intent = Intent(this, InvitationsActivity::class.java) - startActivity(intent) + if (hasSpreedFeatureCapability(currentUser!!.capabilities!!.spreedCapability!!, SpreedFeatures.FEDERATION_V1)) { + binding.conversationListHintInclude.conversationListHintLayout.setOnClickListener { + val intent = Intent(this, InvitationsActivity::class.java) + startActivity(intent) + } + conversationsListViewModel.getFederationInvitations() } - - // TODO create mvvm, fetch pending invitations for all users and store in database for users, if current user - // has invitation -> show hint, if one or more other users have invitations -> show badge - - conversationsListViewModel.getFederationInvitations() } private fun initOverallLayout(isConversationListNotEmpty: Boolean) { diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt index 1eb448614..a4a76816f 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt @@ -165,8 +165,9 @@ class MessageActionsDialog( !(message.isDeletedCommentMessage || message.isDeleted) ) initMenuRemindMessage( - !message.isDeleted && CapabilitiesUtil.hasSpreedFeatureCapability - (spreedCapabilities, SpreedFeatures.REMIND_ME_LATER) + !message.isDeleted && + hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.REMIND_ME_LATER) && + currentConversation!!.remoteServer.isNullOrEmpty() ) initMenuMarkAsUnread( message.previousMessageId > NO_PREVIOUS_MESSAGE_ID && @@ -251,7 +252,8 @@ class MessageActionsDialog( private fun initEmojiBar(hasChatPermission: Boolean) { if (hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.REACTIONS) && isPermitted(hasChatPermission) && - isReactableMessageType(message) + isReactableMessageType(message) && + currentConversation!!.remoteServer.isNullOrEmpty() ) { checkAndSetEmojiSelfReaction(dialogMessageActionsBinding.emojiThumbsUp) dialogMessageActionsBinding.emojiThumbsUp.setOnClickListener { 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 1fa30e884..45c1dab94 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/CapabilitiesUtil.kt @@ -65,7 +65,8 @@ enum class SpreedFeatures(val value: String) { UNIFIED_SEARCH("unified-search"), LOCKED_ONE_TO_ONE("locked-one-to-one-rooms"), CHAT_PERMISSION("chat-permission"), - CONVERSATION_PERMISSION("conversation-permissions") + CONVERSATION_PERMISSION("conversation-permissions"), + FEDERATION_V1("federation-v1") } @Suppress("TooManyFunctions") @@ -102,6 +103,10 @@ object CapabilitiesUtil { return false } + fun isSharedItemsAvailable(spreedCapabilities: SpreedCapability): Boolean { + return hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.RICH_OBJECT_LIST_MEDIA) + } + fun getMessageMaxLength(spreedCapabilities: SpreedCapability): Int { if (spreedCapabilities.config?.containsKey("chat") == true) { val chatConfigHashMap = spreedCapabilities.config!!["chat"] @@ -155,6 +160,9 @@ object CapabilitiesUtil { } fun isUnifiedSearchAvailable(spreedCapabilities: SpreedCapability): Boolean { + if (hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.FEDERATION_V1)) { + return false + } return hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.UNIFIED_SEARCH) } @@ -238,6 +246,13 @@ object CapabilitiesUtil { return false } + fun isFederationAvailable(user: User): Boolean { + return hasSpreedFeatureCapability(user.capabilities!!.spreedCapability!!, SpreedFeatures.FEDERATION_V1) && + user.capabilities!!.spreedCapability!!.config?.containsKey("federation") == true && + user.capabilities!!.spreedCapability!!.config!!["federation"] != null && + user.capabilities!!.spreedCapability!!.config!!["federation"]!!.containsKey("enabled") + } + // endregion //region ThemingCapabilities From 5b7d8bc1870158818edc7eb120a700e25773a0db Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Tue, 12 Mar 2024 14:31:36 +0100 Subject: [PATCH 17/25] update changelog for 18.1.0 Signed-off-by: Marcel Hibbe --- CHANGELOG.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 048389a5c..c5342e6d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,37 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Types of changes can be: Added/Changed/Deprecated/Removed/Fixed/Security +## [18.1.0] - 2024-03-12 + +### Added +- Diagnosis screen (in advanced settings. incl. share option to create new issue) +- Show warnings if notification settings are not set correctly +- Grouping for upload notifications (@parneet-guraya) +- Stop media playback when switching output device (@parneet-guraya) +- Avoid multiple media playbacks (@parneet-guraya) +- Add "Add to notes" in message options +- Cursor position is saved in message drafts +- Share message text to other apps +- Support Android 14 +- Janus 1.x support + +### Fixed +- App permanently sends speaking data channel message +- Back button closes app when forwarding a message + +Minimum: Android 7.0 Nougat + +For a full list, please see https://github.com/nextcloud/talk-android/milestone/79?closed=1 + +## [18.0.1] - 2023-12-22 + +### Fixed +- Voice messages sometimes fail to playback + +Minimum: Android 7.0 Nougat + +For a full list, please see https://github.com/nextcloud/talk-android/milestone/75?closed=1 + ## [18.0.0] - 2023-12-11 ### Added From c462e83bb5f74403fa6f5fb3364b5c31ef783885 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 12 Mar 2024 19:14:18 +0000 Subject: [PATCH 18/25] chore(deps): update github/codeql-action action to v3.24.7 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 4 ++-- .github/workflows/scorecard.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index c7b935209..231a62a54 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -39,7 +39,7 @@ jobs: with: swap-size-gb: 10 - name: Initialize CodeQL - uses: github/codeql-action/init@8a470fddafa5cbb6266ee11b37ef4d8aae19c571 # v3.24.6 + uses: github/codeql-action/init@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7 with: languages: ${{ matrix.language }} - name: Set up JDK 17 @@ -53,4 +53,4 @@ jobs: echo "org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError" > "$HOME/.gradle/gradle.properties" ./gradlew assembleDebug - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@8a470fddafa5cbb6266ee11b37ef4d8aae19c571 # v3.24.6 + uses: github/codeql-action/analyze@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7 diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index 0898b6e01..508de2c14 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -42,6 +42,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@8a470fddafa5cbb6266ee11b37ef4d8aae19c571 # v3.24.6 + uses: github/codeql-action/upload-sarif@3ab4101902695724f9365a384f86c1074d94e18c # v3.24.7 with: sarif_file: results.sarif From cc0ccdf56c86401e26a5bc8079e7ca3b86669674 Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Tue, 12 Mar 2024 20:18:06 +0100 Subject: [PATCH 19/25] Update dependency com.github.nextcloud.android-common:ui to v0.18.0 Signed-off-by: Andy Scherzinger --- app/build.gradle | 2 +- gradle/verification-metadata.xml | 107 ++++++------------------------- 2 files changed, 21 insertions(+), 88 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 12fde2a51..65d3b8e53 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -312,7 +312,7 @@ dependencies { implementation 'androidx.activity:activity-ktx:1.8.2' - implementation 'com.github.nextcloud.android-common:ui:0.17.0' + implementation 'com.github.nextcloud.android-common:ui:0.18.0' implementation 'com.github.nextcloud-deps:android-talk-webrtc:121.6167.0' } diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 88a05f24c..a2150475c 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -454,6 +454,11 @@ + + + + + @@ -2475,100 +2480,28 @@ - - - + + + - - + + - - - + + + - - + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + From 13a5c9444fdc7ce9a74615f257f38b208a24f950 Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Tue, 12 Mar 2024 20:19:47 +0100 Subject: [PATCH 20/25] Migrate to latest bottom sheet theming implementation Signed-off-by: Andy Scherzinger --- .../ConversationInfoActivity.kt | 1 + .../ui/bottom/sheet/ProfileBottomSheet.kt | 2 +- .../talk/ui/dialog/AttachmentDialog.kt | 3 +- .../dialog/ConversationsListBottomDialog.kt | 3 +- .../talk/ui/dialog/MessageActionsDialog.kt | 3 +- .../talk/ui/dialog/ShowReactionsDialog.kt | 3 +- .../ui/theme/TalkSpecificViewThemeUtils.kt | 80 +++++++++++-------- 7 files changed, 55 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/conversationinfo/ConversationInfoActivity.kt b/app/src/main/java/com/nextcloud/talk/conversationinfo/ConversationInfoActivity.kt index b3bb5f9f6..7405be5b5 100644 --- a/app/src/main/java/com/nextcloud/talk/conversationinfo/ConversationInfoActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/conversationinfo/ConversationInfoActivity.kt @@ -1198,6 +1198,7 @@ class ConversationInfoActivity : cornerRadius(res = R.dimen.corner_radius) title(text = participant.displayName) + viewThemeUtils.material.colorBottomSheetBackground(this.view) listItemsWithImage(items = items) { _, index, _ -> if (index == 0) { removeAttendeeFromConversation(apiVersion, participant) diff --git a/app/src/main/java/com/nextcloud/talk/ui/bottom/sheet/ProfileBottomSheet.kt b/app/src/main/java/com/nextcloud/talk/ui/bottom/sheet/ProfileBottomSheet.kt index 70e655c1f..a79289ef9 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/bottom/sheet/ProfileBottomSheet.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/bottom/sheet/ProfileBottomSheet.kt @@ -90,7 +90,7 @@ class ProfileBottomSheet(val ncApi: NcApi, val userModel: User, val viewThemeUti MaterialDialog(context, BottomSheet(LayoutMode.WRAP_CONTENT)).show { cornerRadius(res = R.dimen.corner_radius) - viewThemeUtils.platform.themeDialog(this.view) + viewThemeUtils.material.colorBottomSheetBackground(this.view) title(text = displayName) listItemsWithImage(items = items) { _, index, _ -> diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/AttachmentDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/AttachmentDialog.kt index 0db62cacf..31665aad5 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/AttachmentDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/AttachmentDialog.kt @@ -55,7 +55,8 @@ class AttachmentDialog(val activity: Activity, var chatActivity: ChatActivity) : setContentView(dialogAttachmentBinding.root) window?.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) - viewThemeUtils.platform.themeDialog(dialogAttachmentBinding.root) + viewThemeUtils.material.colorBottomSheetBackground(dialogAttachmentBinding.root) + viewThemeUtils.material.colorBottomSheetDragHandle(dialogAttachmentBinding.bottomSheetDragHandle) initItemsStrings() initItemsVisibility() initItemsClickListeners() diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt index 855030f2d..473527418 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ConversationsListBottomDialog.kt @@ -82,7 +82,8 @@ class ConversationsListBottomDialog( setContentView(binding.root) window?.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) - viewThemeUtils.platform.themeDialog(binding.root) + viewThemeUtils.material.colorBottomSheetBackground(binding.root) + viewThemeUtils.material.colorBottomSheetDragHandle(binding.bottomSheetDragHandle) initHeaderDescription() initItemsVisibility() initClickListeners() diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt index a4a76816f..d6a482ecf 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt @@ -117,7 +117,8 @@ class MessageActionsDialog( setContentView(dialogMessageActionsBinding.root) window?.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) - viewThemeUtils.platform.themeDialog(dialogMessageActionsBinding.root) + viewThemeUtils.material.colorBottomSheetBackground(dialogMessageActionsBinding.root) + viewThemeUtils.material.colorBottomSheetDragHandle(dialogMessageActionsBinding.bottomSheetDragHandle) initEmojiBar(hasChatPermission) initMenuItemCopy(!message.isDeleted) val apiVersion = ApiUtils.getConversationApiVersion(user!!, intArrayOf(ApiUtils.API_V4, ApiUtils.API_V3, 1)) diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ShowReactionsDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/ShowReactionsDialog.kt index 72d691cda..a1c57f58d 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ShowReactionsDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ShowReactionsDialog.kt @@ -81,7 +81,8 @@ class ShowReactionsDialog( binding = DialogMessageReactionsBinding.inflate(layoutInflater) setContentView(binding.root) window?.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) - viewThemeUtils.platform.themeDialog(binding.root) + viewThemeUtils.material.colorBottomSheetBackground(binding.root) + viewThemeUtils.material.colorBottomSheetDragHandle(binding.bottomSheetDragHandle) adapter = ReactionsAdapter(this, user) binding.reactionsList.adapter = adapter binding.reactionsList.layoutManager = LinearLayoutManager(context) diff --git a/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt b/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt index 98794590b..ec9f2e2b2 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/theme/TalkSpecificViewThemeUtils.kt @@ -64,6 +64,7 @@ import com.nextcloud.talk.utils.DrawableUtils import com.nextcloud.talk.utils.message.MessageUtils import com.vanniktech.emoji.EmojiTextView import com.wooplr.spotlight.SpotlightView +import dynamiccolor.MaterialDynamicColors import eu.davidea.flexibleadapter.utils.FlexibleUtils import javax.inject.Inject import kotlin.math.roundToInt @@ -78,6 +79,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( private val appcompat: AndroidXViewThemeUtils ) : ViewThemeUtilsBase(schemes) { + private val dynamicColor = MaterialDynamicColors() fun themeIncomingMessageBubble(bubble: View, grouped: Boolean, deleted: Boolean) { val resources = bubble.resources @@ -104,9 +106,9 @@ class TalkSpecificViewThemeUtils @Inject constructor( fun themeOutgoingMessageBubble(bubble: View, grouped: Boolean, deleted: Boolean) { withScheme(bubble) { scheme -> val bgBubbleColor = if (deleted) { - ColorUtils.setAlphaComponent(scheme.surfaceVariant, HALF_ALPHA_INT) + ColorUtils.setAlphaComponent(dynamicColor.surfaceVariant().getArgb(scheme), HALF_ALPHA_INT) } else { - scheme.surfaceVariant + dynamicColor.surfaceVariant().getArgb(scheme) } val layout = if (grouped) { @@ -126,31 +128,31 @@ class TalkSpecificViewThemeUtils @Inject constructor( fun colorOutgoingQuoteText(textView: TextView) { withScheme(textView) { scheme -> - textView.setTextColor(scheme.onSurfaceVariant) + textView.setTextColor(dynamicColor.onSurfaceVariant().getArgb(scheme)) } } fun colorOutgoingQuoteAuthorText(textView: TextView) { withScheme(textView) { scheme -> - ColorUtils.setAlphaComponent(scheme.onSurfaceVariant, ALPHA_80_INT) + ColorUtils.setAlphaComponent(dynamicColor.onSurfaceVariant().getArgb(scheme), ALPHA_80_INT) } } fun colorOutgoingQuoteBackground(view: View) { withScheme(view) { scheme -> - view.setBackgroundColor(scheme.onSurfaceVariant) + view.setBackgroundColor(dynamicColor.onSurfaceVariant().getArgb(scheme)) } } fun colorContactChatItemName(contactName: androidx.emoji2.widget.EmojiTextView) { withScheme(contactName) { scheme -> - contactName.setTextColor(scheme.onPrimaryContainer) + contactName.setTextColor(dynamicColor.onPrimaryContainer().getArgb(scheme)) } } fun colorContactChatItemBackground(card: MaterialCardView) { withScheme(card) { scheme -> - card.setCardBackgroundColor(scheme.primaryContainer) + card.setCardBackgroundColor(dynamicColor.primaryContainer().getArgb(scheme)) } } @@ -166,7 +168,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( .mutate() DrawableCompat.setTintList( drawable, - ColorStateList.valueOf(scheme.primary) + ColorStateList.valueOf(dynamicColor.primary().getArgb(scheme)) ) emoji.background = drawable } @@ -178,7 +180,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( .getDrawable(linearLayout.context, R.drawable.reaction_self_background)!! .mutate() val backgroundColor = if (incoming) { - scheme.primaryContainer + dynamicColor.primaryContainer().getArgb(scheme) } else { ContextCompat.getColor( linearLayout.context, @@ -207,7 +209,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( private fun colorDrawable(context: Context, drawable: Drawable) { withScheme(context) { scheme -> - drawable.setTint(scheme.primary) + drawable.setTint(dynamicColor.primary().getArgb(scheme)) } } @@ -217,9 +219,9 @@ class TalkSpecificViewThemeUtils @Inject constructor( withScheme(avatar) { scheme -> val layers = arrayOfNulls(2) layers[0] = ContextCompat.getDrawable(avatar.context, R.drawable.ic_avatar_background) - layers[0]?.setTint(scheme.surfaceVariant) + layers[0]?.setTint(dynamicColor.surfaceVariant().getArgb(scheme)) layers[1] = ContextCompat.getDrawable(avatar.context, foreground) - layers[1]?.setTint(scheme.onSurfaceVariant) + layers[1]?.setTint(dynamicColor.onSurfaceVariant().getArgb(scheme)) drawable = LayerDrawable(layers) } @@ -231,10 +233,10 @@ class TalkSpecificViewThemeUtils @Inject constructor( // hacky as no default way is provided val editText = searchView.findViewById(R.id.search_src_text) val searchPlate = searchView.findViewById(R.id.search_plate) - editText.setHintTextColor(scheme.onSurfaceVariant) - editText.setTextColor(scheme.onSurface) - editText.setBackgroundColor(scheme.surface) - searchPlate.setBackgroundColor(scheme.surface) + editText.setHintTextColor(dynamicColor.onSurfaceVariant().getArgb(scheme)) + editText.setTextColor(dynamicColor.onSurface().getArgb(scheme)) + editText.setBackgroundColor(dynamicColor.surface().getArgb(scheme)) + searchPlate.setBackgroundColor(dynamicColor.surface().getArgb(scheme)) } } @@ -248,7 +250,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( intArrayOf(-android.R.attr.state_checked) ), intArrayOf( - scheme.secondaryContainer, + dynamicColor.secondaryContainer().getArgb(scheme), background ) ) @@ -259,8 +261,8 @@ class TalkSpecificViewThemeUtils @Inject constructor( intArrayOf(-android.R.attr.state_checked) ), intArrayOf( - scheme.onSecondaryContainer, - scheme.surface + dynamicColor.onSecondaryContainer().getArgb(scheme), + dynamicColor.surface().getArgb(scheme) ) ) ) @@ -269,29 +271,33 @@ class TalkSpecificViewThemeUtils @Inject constructor( fun themeMicInputCloud(micInputCloud: MicInputCloud) { withScheme(micInputCloud) { scheme -> - micInputCloud.setColor(scheme.primary) + micInputCloud.setColor(dynamicColor.primary().getArgb(scheme)) } } fun themeWaveFormSeekBar(waveformSeekBar: WaveformSeekBar) { withScheme(waveformSeekBar) { scheme -> waveformSeekBar.thumb.colorFilter = - PorterDuffColorFilter(scheme.inversePrimary, PorterDuff.Mode.SRC_IN) - waveformSeekBar.setColors(scheme.inversePrimary, scheme.onPrimaryContainer) + PorterDuffColorFilter(dynamicColor.inversePrimary().getArgb(scheme), PorterDuff.Mode.SRC_IN) + waveformSeekBar.setColors( + dynamicColor.inversePrimary().getArgb(scheme), + dynamicColor.onPrimaryContainer().getArgb(scheme) + ) waveformSeekBar.progressDrawable?.colorFilter = - PorterDuffColorFilter(scheme.primary, PorterDuff.Mode.SRC_IN) + PorterDuffColorFilter(dynamicColor.primary().getArgb(scheme), PorterDuff.Mode.SRC_IN) } } fun themeForegroundColorSpan(context: Context): ForegroundColorSpan { return withScheme(context) { scheme -> - return@withScheme ForegroundColorSpan(scheme.primary) + return@withScheme ForegroundColorSpan(dynamicColor.primary().getArgb(scheme)) } } fun themeSpotlightView(context: Context, builder: SpotlightView.Builder): SpotlightView.Builder { return withScheme(context) { scheme -> - return@withScheme builder.headingTvColor(scheme.primary).lineAndArcColor(scheme.primary) + return@withScheme builder.headingTvColor(dynamicColor.primary().getArgb(scheme)) + .lineAndArcColor(dynamicColor.primary().getArgb(scheme)) } } @@ -305,7 +311,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( do { val end = start + constraint.length spanText.setSpan( - ForegroundColorSpan(scheme.primary), + ForegroundColorSpan(dynamicColor.primary().getArgb(scheme)), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE @@ -323,34 +329,34 @@ class TalkSpecificViewThemeUtils @Inject constructor( fun themeSortButton(sortButton: MaterialButton) { withScheme(sortButton) { scheme -> - sortButton.iconTint = ColorStateList.valueOf(scheme.onSurface) - sortButton.setTextColor(scheme.onSurface) + sortButton.iconTint = ColorStateList.valueOf(dynamicColor.onSurface().getArgb(scheme)) + sortButton.setTextColor(dynamicColor.onSurface().getArgb(scheme)) } } fun themePathNavigationButton(navigationBtn: MaterialButton) { withScheme(navigationBtn) { scheme -> - navigationBtn.iconTint = ColorStateList.valueOf(scheme.onSurface) - navigationBtn.setTextColor(scheme.onSurface) + navigationBtn.iconTint = ColorStateList.valueOf(dynamicColor.onSurface().getArgb(scheme)) + navigationBtn.setTextColor(dynamicColor.onSurface().getArgb(scheme)) } } fun themeSortListButtonGroup(relativeLayout: RelativeLayout) { withScheme(relativeLayout) { scheme -> - relativeLayout.setBackgroundColor(scheme.surface) + relativeLayout.setBackgroundColor(dynamicColor.surface().getArgb(scheme)) } } fun themeStatusDrawable(context: Context, statusDrawable: StatusDrawable) { withScheme(context) { scheme -> - statusDrawable.colorStatusDrawable(scheme.surface) + statusDrawable.colorStatusDrawable(dynamicColor.surface().getArgb(scheme)) } } fun themeMessageCheckMark(imageView: ImageView) { withScheme(imageView) { scheme -> imageView.setColorFilter( - scheme.onSurfaceVariant, + dynamicColor.onSurfaceVariant().getArgb(scheme), PorterDuff.Mode.SRC_ATOP ) } @@ -365,7 +371,11 @@ class TalkSpecificViewThemeUtils @Inject constructor( context.getColor(R.color.nc_incoming_text_default) ) } else { - MessageUtils(context).getRenderedMarkdownText(context, message, scheme.onSurfaceVariant) + MessageUtils(context).getRenderedMarkdownText( + context, + message, + dynamicColor.onSurfaceVariant().getArgb(scheme) + ) } } } @@ -375,7 +385,7 @@ class TalkSpecificViewThemeUtils @Inject constructor( return@withScheme if (!isOutgoingMessage || isSelfReaction) { ContextCompat.getColor(binding.root.context, R.color.high_emphasis_text) } else { - scheme.onSurfaceVariant + dynamicColor.onSurfaceVariant().getArgb(scheme) } } } From a067692662d1764cd688c9c444f0d028af3846fe Mon Sep 17 00:00:00 2001 From: Nextcloud bot Date: Wed, 13 Mar 2024 04:36:28 +0000 Subject: [PATCH 21/25] Fix(l10n): Update translations from Transifex Signed-off-by: Nextcloud bot --- app/src/main/res/values-b+en+001/strings.xml | 1 + app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values-fr/strings.xml | 3 +++ app/src/main/res/values-nb-rNO/strings.xml | 1 + app/src/main/res/values-pt-rBR/strings.xml | 1 + app/src/main/res/values-sr/strings.xml | 1 + app/src/main/res/values-zh-rHK/strings.xml | 1 + app/src/main/res/values-zh-rTW/strings.xml | 1 + 8 files changed, 10 insertions(+) diff --git a/app/src/main/res/values-b+en+001/strings.xml b/app/src/main/res/values-b+en+001/strings.xml index 2a8249a26..6613d346d 100644 --- a/app/src/main/res/values-b+en+001/strings.xml +++ b/app/src/main/res/values-b+en+001/strings.xml @@ -22,6 +22,7 @@ Clear status message after Close Lock recording for continuously recording of the voice message + Conversation is read only Conversations Create conversation Create issue diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 10eec6b81..13455d806 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -22,6 +22,7 @@ Statusmeldung löschen nach Schließen Aufnahme sperren für kontinuierliche Aufzeichnung der Sprachnachricht + UNterhaltung ist schreibgeschützt Unterhaltungen Unterhaltung erstellen Fehler melden diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 11589f3ec..96058c530 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -22,6 +22,7 @@ Effacer le message d\'état après Fermer Verrouiller l\'enregistrement pour enregistrer en continu le message vocal + La conversation est en lecture seule Discussions Créer la conversation Personnalisé @@ -32,6 +33,7 @@ Ne pas effacer Modifier Impossible de modifier des messages plus anciens que 24 heures + Modifier l\'icône du message Retour arrière Récent Chiffré @@ -160,6 +162,7 @@ App Nom de l\'application Utilisateurs enregistrés + Version de l\'app Paramètres pour la batterie Appareil Ouvrir l\'écran de diagnostic diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index 7903b1fb4..fcbe64273 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -22,6 +22,7 @@ Fjern statusmelding etter Lukk Lås opptak for kontinuerlig opptak av talemeldingen + Samtalen kan kun leses Samtaler Opprett samtale Opprett problem diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 972eb59cd..97dbf47fe 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -22,6 +22,7 @@ Limpar mensagem de status após Fechar Gravação de bloqueio para gravação contínua da mensagem de voz + A conversa é somente leitura Conversas Criando conversa Criar problema diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index 3b277c132..c942621d3 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -22,6 +22,7 @@ Обриши статусну поруку након Затвори Закључајте снимање да би се гласовна порука непрестано снимала. + Овај разговор је само-за-читање Разговори Креирај разговор Креирај проблем diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 587eeedfd..923d3b440 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -22,6 +22,7 @@ 繼此之後清空狀態訊息 關閉 鎖定錄音以連續錄製語音訊息 + 對話是唯讀 對話 建立對話 創建問題 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 802285df7..4ff83d6c5 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -22,6 +22,7 @@ 在……之後清空狀態訊息 關閉 鎖定錄音以連續錄製語音訊息 + 對話為唯讀 對話 建立對話 建立問題 From 445721487ebdf205fea47291e665fc80f3dadce9 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Wed, 13 Mar 2024 10:25:17 +0100 Subject: [PATCH 22/25] dont hide message reactions in MessageActionsDialog for federated rooms works out of the box after server implemented federated reactions. no client changes needed Signed-off-by: Marcel Hibbe --- .../java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt index d6a482ecf..3b7f509e5 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt @@ -253,8 +253,7 @@ class MessageActionsDialog( private fun initEmojiBar(hasChatPermission: Boolean) { if (hasSpreedFeatureCapability(spreedCapabilities, SpreedFeatures.REACTIONS) && isPermitted(hasChatPermission) && - isReactableMessageType(message) && - currentConversation!!.remoteServer.isNullOrEmpty() + isReactableMessageType(message) ) { checkAndSetEmojiSelfReaction(dialogMessageActionsBinding.emojiThumbsUp) dialogMessageActionsBinding.emojiThumbsUp.setOnClickListener { From 306ac18732dbbe99e82864a46a221e1aef862ae2 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Wed, 13 Mar 2024 12:45:09 +0100 Subject: [PATCH 23/25] fix placement of contacts header items Signed-off-by: Marcel Hibbe --- app/src/main/res/layout/activity_contacts.xml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/app/src/main/res/layout/activity_contacts.xml b/app/src/main/res/layout/activity_contacts.xml index 638733c7f..e244b0b36 100644 --- a/app/src/main/res/layout/activity_contacts.xml +++ b/app/src/main/res/layout/activity_contacts.xml @@ -194,15 +194,17 @@ - + app:layout_constraintTop_toBottomOf="@id/list_open_conversations"> + + From 353cabc442062994b903c7bc8f4ecd8e7d46c4f6 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Wed, 13 Mar 2024 17:36:57 +0100 Subject: [PATCH 24/25] Fix Recents Screen Signed-off-by: sowjanyakch --- app/src/main/java/com/nextcloud/talk/activities/BaseActivity.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/nextcloud/talk/activities/BaseActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/BaseActivity.kt index a33027f16..2f102db9a 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/BaseActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/BaseActivity.kt @@ -105,7 +105,7 @@ open class BaseActivity : AppCompatActivity() { disableKeyboardPersonalisedLearning(viewGroup) } - if (appPreferences.isScreenSecured) { + if (appPreferences.isScreenSecured || appPreferences.isScreenLocked) { window.addFlags(WindowManager.LayoutParams.FLAG_SECURE) } else { window.clearFlags(WindowManager.LayoutParams.FLAG_SECURE) From 31f82fc2e932a3a1798d9acc93df2d9cbb6aa4d1 Mon Sep 17 00:00:00 2001 From: nextcloud-android-bot Date: Wed, 13 Mar 2024 17:44:09 +0000 Subject: [PATCH 25/25] =?UTF-8?q?=F0=9F=94=84=20synced=20local=20'.github/?= =?UTF-8?q?workflows/'=20with=20remote=20'config/workflows/'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: nextcloud-android-bot --- .github/workflows/analysis.yml | 2 +- .github/workflows/codeql.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/analysis.yml b/.github/workflows/analysis.yml index 403d94a6f..7c97ceb1c 100644 --- a/.github/workflows/analysis.yml +++ b/.github/workflows/analysis.yml @@ -49,7 +49,7 @@ jobs: repository: ${{ steps.get-vars.outputs.repo }} ref: ${{ steps.get-vars.outputs.branch }} - name: Set up JDK 17 - uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0 + uses: actions/setup-java@5896cecc08fd8a1fbdfaf517e29b571164b031f7 # v4.2.0 with: distribution: "temurin" java-version: 17 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 231a62a54..6f2a3b6cb 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -43,7 +43,7 @@ jobs: with: languages: ${{ matrix.language }} - name: Set up JDK 17 - uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0 + uses: actions/setup-java@5896cecc08fd8a1fbdfaf517e29b571164b031f7 # v4.2.0 with: distribution: "temurin" java-version: 17