From 04d25ef5274a3e98961172e8f87dd8090238f4ff Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 10 Jun 2025 11:01:24 +0200 Subject: [PATCH] Simplification --- app/src/main/java/eu/faircode/email/ActivityCompose.java | 3 +-- app/src/main/java/eu/faircode/email/EntityAnswer.java | 2 +- app/src/main/java/eu/faircode/email/FragmentCompose.java | 6 ++---- app/src/main/java/eu/faircode/email/UriType.java | 7 ++++++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ActivityCompose.java b/app/src/main/java/eu/faircode/email/ActivityCompose.java index 7ea65f755b..76262e1975 100644 --- a/app/src/main/java/eu/faircode/email/ActivityCompose.java +++ b/app/src/main/java/eu/faircode/email/ActivityCompose.java @@ -258,8 +258,7 @@ public class ActivityCompose extends ActivityBase implements FragmentManager.OnB ClipData.Item item = clip.getItemAt(i); Uri stream = (item == null ? null : item.getUri()); if (stream != null) - uris.add(new UriType(stream, - description != null && i < description.getMimeTypeCount() ? description.getMimeType(i) : null, this)); + uris.add(new UriType(stream, description, this)); } if (intent.hasExtra(Intent.EXTRA_STREAM)) { diff --git a/app/src/main/java/eu/faircode/email/EntityAnswer.java b/app/src/main/java/eu/faircode/email/EntityAnswer.java index 1e59ad69f6..2deeb1d181 100644 --- a/app/src/main/java/eu/faircode/email/EntityAnswer.java +++ b/app/src/main/java/eu/faircode/email/EntityAnswer.java @@ -580,7 +580,7 @@ public class EntityAnswer implements Serializable { for (Uri file : attachments) try { EntityAttachment attachment = new EntityAttachment(); - Helper.UriInfo info = Helper.getInfo(new UriType(file, null, null), context); + Helper.UriInfo info = Helper.getInfo(new UriType(file, (String) null, null), context); attachment.message = id; attachment.sequence = db.attachment().getAttachmentSequence(id) + 1; diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 1d65a6022a..adbc057c44 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -3382,7 +3382,7 @@ public class FragmentCompose extends FragmentBase { case REQUEST_TAKE_PHOTO: if (resultCode == RESULT_OK) { if (photoURI != null) - onAddImageFile(Arrays.asList(new UriType(photoURI, null, null)), false); + onAddImageFile(Arrays.asList(new UriType(photoURI, (String) null, getContext())), false); } break; case REQUEST_ATTACHMENT: @@ -3951,9 +3951,7 @@ public class FragmentCompose extends FragmentBase { ClipData.Item item = clipData.getItemAt(i); Uri uri = item.getUri(); if (uri != null) - result.add(new UriType(uri, - description != null && i < description.getMimeTypeCount() ? description.getMimeType(i) : null, - getContext())); + result.add(new UriType(uri, description, getContext())); } } diff --git a/app/src/main/java/eu/faircode/email/UriType.java b/app/src/main/java/eu/faircode/email/UriType.java index cf0e8c1d96..bdb1bdeb2b 100644 --- a/app/src/main/java/eu/faircode/email/UriType.java +++ b/app/src/main/java/eu/faircode/email/UriType.java @@ -19,6 +19,7 @@ package eu.faircode.email; Copyright 2018-2025 by Marcel Bokhorst (M66B) */ +import android.content.ClipDescription; import android.content.Context; import android.net.Uri; import android.os.Parcel; @@ -39,6 +40,10 @@ public class UriType implements Parcelable { this.type = in.readString(); } + public UriType(Uri uri, ClipDescription description, Context context) { + this(uri, description == null || description.getMimeTypeCount() <= 0 ? null : description.getMimeType(0), context); + } + public UriType(Uri uri, String type, Context context) { this.uri = uri; if (!TextUtils.isEmpty(type)) @@ -85,7 +90,7 @@ public class UriType implements Parcelable { List result = new ArrayList<>(); if (uris != null) for (Uri uri : uris) - result.add(new UriType(uri, null, context)); + result.add(new UriType(uri, (String) null, context)); return result; }