summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas <tschneider.ac@gmail.com>2023-03-09 17:31:41 +0100
committerThomas <tschneider.ac@gmail.com>2023-03-09 17:31:41 +0100
commit6a1a144ca34563e9b4af65ba70dba9c888edff95 (patch)
tree984827a7ccede7dcae8f259afa9661a1c8ef6dd8
parent22b43db39b050be792a24a8d096d01c3143d938f (diff)
extend media description warning to cross boost
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java22
1 files changed, 21 insertions, 1 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java
index e6edbc3a9..3cea4c187 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/StatusAdapter.java
@@ -985,7 +985,27 @@ public class StatusAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>
if (statusToDeal.visibility.equals("direct") || (statusToDeal.visibility.equals("private"))) {
return true;
}
- CrossActionHelper.doCrossAction(context, CrossActionHelper.TypeOfCrossAction.REBLOG_ACTION, null, statusToDeal);
+ boolean needToWarnForMissingDescription = false;
+ if (warnNoMedia && statusToDeal.media_attachments != null && statusToDeal.media_attachments.size() > 0) {
+ for (Attachment attachment : statusToDeal.media_attachments) {
+ if (attachment.description == null || attachment.description.trim().length() == 0) {
+ needToWarnForMissingDescription = true;
+ break;
+ }
+ }
+ }
+ if (needToWarnForMissingDescription) {
+ AlertDialog.Builder alt_bld = new MaterialAlertDialogBuilder(context);
+ alt_bld.setMessage(context.getString(R.string.reblog_missing_description));
+ alt_bld.setPositiveButton(R.string.yes, (dialog, id) -> {
+ CrossActionHelper.doCrossAction(context, CrossActionHelper.TypeOfCrossAction.REBLOG_ACTION, null, statusToDeal);
+ });
+ alt_bld.setNegativeButton(R.string.cancel, (dialog, id) -> dialog.dismiss());
+ AlertDialog alert = alt_bld.create();
+ alert.show();
+ } else {
+ CrossActionHelper.doCrossAction(context, CrossActionHelper.TypeOfCrossAction.REBLOG_ACTION, null, statusToDeal);
+ }
return true;
});
holder.binding.actionButtonBoost.setOnClickListener(v -> {