Change summary
  src/main/java/eu/siacs/conversations/ui/adapter/MediaAdapter.java | 16 +
1 file changed, 16 insertions(+)
  Detailed changes
  
  
    
    @@ -28,6 +28,7 @@ import eu.siacs.conversations.ui.util.Attachment;
 import eu.siacs.conversations.ui.util.ViewUtil;
 import eu.siacs.conversations.worker.ExportBackupWorker;
 
+import java.io.File;
 import java.lang.ref.WeakReference;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -174,6 +175,21 @@ public class MediaAdapter extends RecyclerView.Adapter<MediaAdapter.MediaViewHol
             renderPreview(attachment, holder.binding.media);
         }
         holder.binding.getRoot().setOnClickListener(v -> ViewUtil.view(activity, attachment));
+        holder.binding.getRoot().setOnCreateContextMenuListener((menu, v, menuInfo) -> {
+            final var path = activity.xmppConnectionService.getFileBackend().getOriginalPath(attachment.getUri());
+            if (path == null) return;
+            final var file = new File(path);
+            if (!file.canWrite()) return;
+
+            menu.add("Delete File").setOnMenuItemClickListener((x) -> {
+                if (file.delete()) {
+                    activity.xmppConnectionService.evictPreview(file);
+                    attachments.remove(attachment);
+                    notifyDataSetChanged();
+                }
+                return true;
+            });
+        });
     }
 
     public void setAttachments(final List<Attachment> attachments) {