From 9e7835558d0d612aaf3880f4513fe0e4a2d65b0c Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Thu, 3 Apr 2025 08:40:39 +0200 Subject: [PATCH] toast after copy to clipboard is unnecessary on Android 13+ --- .../conversations/ui/ConversationFragment.java | 14 ++++++++------ .../eu/siacs/conversations/ui/OmemoActivity.java | 6 ++++-- .../eu/siacs/conversations/ui/util/ShareUtil.java | 14 +++++++++----- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java index cc6dfcd19178e3f7745010fa3cb17f94f3a6362d..85c96e0aad375a3ae2f8f135425f24dfb879f052 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java +++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java @@ -2185,12 +2185,14 @@ public class ConversationFragment extends XmppFragment builder.setNegativeButton( R.string.copy_to_clipboard, (dialog, which) -> { - activity.copyTextToClipboard(displayError, R.string.error_message); - Toast.makeText( - activity, - R.string.error_message_copied_to_clipboard, - Toast.LENGTH_SHORT) - .show(); + if (activity.copyTextToClipboard(displayError, R.string.error_message) + && Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { + Toast.makeText( + activity, + R.string.error_message_copied_to_clipboard, + Toast.LENGTH_SHORT) + .show(); + } }); builder.setPositiveButton(R.string.confirm, null); builder.create().show(); diff --git a/src/main/java/eu/siacs/conversations/ui/OmemoActivity.java b/src/main/java/eu/siacs/conversations/ui/OmemoActivity.java index f3225b9ecda2db88eed0bec3f9525a8599f4dc36..c78cf4dbc6be4972fb5ffabf3def9c8cf136158d 100644 --- a/src/main/java/eu/siacs/conversations/ui/OmemoActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/OmemoActivity.java @@ -1,6 +1,7 @@ package eu.siacs.conversations.ui; import android.content.Intent; +import android.os.Build; import android.view.ContextMenu; import android.view.MenuItem; import android.view.View; @@ -92,8 +93,9 @@ public abstract class OmemoActivity extends XmppActivity { protected void copyOmemoFingerprint(String fingerprint) { if (copyTextToClipboard( - CryptoHelper.prettifyFingerprint(fingerprint.substring(2)), - R.string.omemo_fingerprint)) { + CryptoHelper.prettifyFingerprint(fingerprint.substring(2)), + R.string.omemo_fingerprint) + && Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { Toast.makeText(this, R.string.toast_message_omemo_fingerprint, Toast.LENGTH_SHORT) .show(); } diff --git a/src/main/java/eu/siacs/conversations/ui/util/ShareUtil.java b/src/main/java/eu/siacs/conversations/ui/util/ShareUtil.java index 1602b225597ab29851acc876c93d6fe0ff18bd6f..0a4707074ac88e616489d6c97719a6ab4f099b54 100644 --- a/src/main/java/eu/siacs/conversations/ui/util/ShareUtil.java +++ b/src/main/java/eu/siacs/conversations/ui/util/ShareUtil.java @@ -31,6 +31,7 @@ package eu.siacs.conversations.ui.util; import android.content.ActivityNotFoundException; import android.content.Intent; +import android.os.Build; import android.widget.Toast; import androidx.annotation.StringRes; import com.google.common.collect.Iterables; @@ -93,14 +94,15 @@ public class ShareUtil { } } - public static void copyToClipboard(XmppActivity activity, Message message) { - if (activity.copyTextToClipboard(message.getBody(), R.string.message)) { + public static void copyToClipboard(final XmppActivity activity, final Message message) { + if (activity.copyTextToClipboard(message.getBody(), R.string.message) + && Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { Toast.makeText(activity, R.string.message_copied_to_clipboard, Toast.LENGTH_SHORT) .show(); } } - public static void copyUrlToClipboard(XmppActivity activity, Message message) { + public static void copyUrlToClipboard(final XmppActivity activity, final Message message) { final String url; final int resId; if (message.isGeoUri()) { @@ -117,7 +119,8 @@ public class ShareUtil { : message.getBody().trim(); resId = R.string.file_url; } - if (activity.copyTextToClipboard(url, resId)) { + if (activity.copyTextToClipboard(url, resId) + && Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { Toast.makeText(activity, R.string.url_copied_to_clipboard, Toast.LENGTH_SHORT).show(); } } @@ -147,7 +150,8 @@ public class ShareUtil { case "mailto" -> R.string.copied_email_address; default -> R.string.uri_copied_to_clipboard; }; - if (activity.copyTextToClipboard(clip, label)) { + if (activity.copyTextToClipboard(clip, label) + && Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { Toast.makeText(activity, toast, Toast.LENGTH_SHORT).show(); } }