From bcabdc4fbab8e6dcdbd07ac3d4ce77d6894da8cc Mon Sep 17 00:00:00 2001 From: ThomasSession Date: Thu, 27 Feb 2025 07:23:16 +0200 Subject: [PATCH] Fix/groupsv2 fixes (#989) * SES-3431 no emoji reaciton on control messages * SES-3423 Quoted messages styling * clean up * SES 3430 - delete media dialogs * Update conversation when attachment changes --- .../dialogs/DeleteMediaPreviewDialog.kt | 4 ++-- .../securesms/database/Database.java | 17 ++++++++++++++++- .../securesms/media/MediaOverviewScreen.kt | 6 +++--- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/dialogs/DeleteMediaPreviewDialog.kt b/app/src/main/java/org/thoughtcrime/securesms/components/dialogs/DeleteMediaPreviewDialog.kt index a287ad0892..542c8719fe 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/dialogs/DeleteMediaPreviewDialog.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/dialogs/DeleteMediaPreviewDialog.kt @@ -10,8 +10,8 @@ class DeleteMediaPreviewDialog { fun show(context: Context, doDelete: Runnable) { context.showSessionDialog { iconAttribute(R.attr.dialog_alert_icon) - title(context.resources.getQuantityString(R.plurals.deleteMessage, 1, 1)) - text(R.string.deleteMessageDescriptionEveryone) + title(context.resources.getString(R.string.delete)) + text(R.string.deleteMessageDeviceOnly) dangerButton(R.string.delete) { doDelete.run() } cancelButton() } diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/Database.java b/app/src/main/java/org/thoughtcrime/securesms/database/Database.java index e1879d5230..e490dae611 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/Database.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/Database.java @@ -20,6 +20,7 @@ import android.annotation.SuppressLint; import android.content.Context; import android.database.ContentObserver; import android.database.Cursor; +import android.os.Build; import androidx.annotation.NonNull; @@ -30,6 +31,7 @@ import org.session.libsignal.utilities.Log; import org.thoughtcrime.securesms.ApplicationContext; import org.thoughtcrime.securesms.database.helpers.SQLCipherOpenHelper; +import java.util.Arrays; import java.util.Set; public abstract class Database { @@ -79,7 +81,20 @@ public abstract class Database { } protected void setNotifyConversationListeners(Cursor cursor, long threadId) { - cursor.setNotificationUri(context.getContentResolver(), DatabaseContentProviders.Conversation.getUriForThread(threadId)); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + cursor.setNotificationUris( + context.getContentResolver(), + Arrays.asList( + DatabaseContentProviders.Conversation.getUriForThread(threadId), + DatabaseContentProviders.Attachment.CONTENT_URI + ) + ); + } else { + cursor.setNotificationUri( + context.getContentResolver(), + DatabaseContentProviders.Conversation.getUriForThread(threadId) + ); + } } protected void setNotifyConversationListListeners(Cursor cursor) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/media/MediaOverviewScreen.kt b/app/src/main/java/org/thoughtcrime/securesms/media/MediaOverviewScreen.kt index c6c6ca2e41..4bdec3fdf5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/media/MediaOverviewScreen.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/media/MediaOverviewScreen.kt @@ -38,6 +38,7 @@ import androidx.compose.ui.hapticfeedback.HapticFeedbackType import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalHapticFeedback +import androidx.compose.ui.res.stringResource import network.loki.messenger.R import org.thoughtcrime.securesms.ui.AlertDialog import org.thoughtcrime.securesms.ui.DialogButtonModel @@ -246,9 +247,8 @@ private fun DeleteConfirmationDialog( val context = LocalContext.current AlertDialog( onDismissRequest = onDismissRequest, - title = context.resources.getQuantityString( - R.plurals.deleteMessage, numSelected - ), + title = stringResource(R.string.delete), + text = stringResource(R.string.deleteMessageDeviceOnly), buttons = listOf( DialogButtonModel(GetString(R.string.delete), color = LocalColors.current.danger, onClick = onAccepted), DialogButtonModel(GetString(android.R.string.cancel), dismissOnClick = true)