From ba75aa6d9176d923a8b2b88a24b06ccca119978f Mon Sep 17 00:00:00 2001 From: Grishka Date: Mon, 17 Jan 2022 23:09:47 +0300 Subject: [PATCH] Clear images in StatusListFragment when it becomes invisible --- .../android/fragments/HomeFragment.java | 6 +++++ .../android/fragments/StatusListFragment.java | 22 +++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeFragment.java index 7c3c934ea..ee1552e3b 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeFragment.java @@ -43,4 +43,10 @@ public class HomeFragment extends AppKitFragment{ return content; } + + @Override + public void onHiddenChanged(boolean hidden){ + super.onHiddenChanged(hidden); + homeTimelineFragment.onHiddenChanged(hidden); + } } diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/StatusListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/StatusListFragment.java index b3df11aea..5d92ffc8c 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/StatusListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/StatusListFragment.java @@ -12,6 +12,7 @@ import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import me.grishka.appkit.fragments.BaseRecyclerFragment; import me.grishka.appkit.imageloader.ImageLoaderRecyclerAdapter; +import me.grishka.appkit.imageloader.ImageLoaderViewHolder; import me.grishka.appkit.imageloader.requests.ImageLoaderRequest; import me.grishka.appkit.utils.BindableViewHolder; import me.grishka.appkit.views.UsableRecyclerView; @@ -54,6 +55,27 @@ public abstract class StatusListFragment extends BaseRecyclerFragment{ adapter.notifyItemRangeInserted(0, offset); } + @Override + protected void onHidden(){ + super.onHidden(); + imgLoader.deactivate(); + UsableRecyclerView list=(UsableRecyclerView) this.list; + for(int i=0;i> implements ImageLoaderRecyclerAdapter{ public DisplayItemsAdapter(){