diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index ca437baec9..966051679e 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -59,7 +59,6 @@ import android.text.style.QuoteSpan; import android.text.style.StyleSpan; import android.text.style.URLSpan; import android.util.Base64; -import android.util.LongSparseArray; import android.util.TypedValue; import android.view.LayoutInflater; import android.view.Menu; @@ -164,7 +163,6 @@ public class AdapterMessage extends RecyclerView.Adapter selectionTracker = null; private AsyncPagedListDiffer differ = new AsyncPagedListDiffer<>(this, DIFF_CALLBACK); - private LongSparseArray> idAttachments = new LongSparseArray<>(); enum ViewType {UNIFIED, FOLDER, THREAD, SEARCH} @@ -847,7 +845,7 @@ public class AdapterMessage extends RecyclerView.Adapter>() { @Override @@ -944,7 +942,7 @@ public class AdapterMessage extends RecyclerView.Adapter attachments) { if (attachments == null) attachments = new ArrayList<>(); - idAttachments.put(message.id, attachments); + properties.setAttchments(message.id, attachments); boolean show_inline = properties.getValue("inline", message.id); Log.i("Show inline=" + show_inline); @@ -3155,6 +3153,10 @@ public class AdapterMessage extends RecyclerView.Adapter attachments); + + List getAttachments(long id); + void scrollTo(int pos, int dy); void move(long id, String target, boolean type); diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index cb0803605b..79a21a7c74 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -161,6 +161,7 @@ public class FragmentMessages extends FragmentBase { private Map> values = new HashMap<>(); private Map bodies = new HashMap<>(); private Map html = new HashMap<>(); + private LongSparseArray> attachments = new LongSparseArray<>(); private LongSparseArray accountSwipes = new LongSparseArray<>(); private BoundaryCallbackMessages boundaryCallback = null; @@ -713,6 +714,16 @@ public class FragmentMessages extends FragmentBase { return html.get(id); } + @Override + public void setAttchments(long id, List list) { + attachments.put(id, list); + } + + @Override + public List getAttachments(long id) { + return attachments.get(id); + } + @Override public void scrollTo(final int pos, final int dy) { new Handler().post(new Runnable() {