From bd5fccf2db4baedf85ada2fac9d92ec951efbe04 Mon Sep 17 00:00:00 2001 From: Thomas Date: Wed, 30 Nov 2022 15:52:41 +0100 Subject: [PATCH] Fix issue 558 - App doesn't remember position on profiles/fav/bookmarks etc. --- .../ui/fragment/timeline/FragmentMastodonTimeline.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java index 8b3e977f..4da7fedc 100644 --- a/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java +++ b/app/src/main/java/app/fedilab/android/ui/fragment/timeline/FragmentMastodonTimeline.java @@ -175,6 +175,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter. private boolean rememberPosition; private String publicTrendsDomain; private int lockForResumeCall; + private boolean isNotPinnedTimeline; //Allow to recreate data when detaching/attaching fragment public void recreate() { @@ -213,10 +214,10 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter. router(null); } } else { - if (timelineType == Timeline.TimeLineEnum.ACCOUNT_TIMELINE && lockForResumeCall == 0) { + if (isNotPinnedTimeline && lockForResumeCall == 0) { router(null); lockForResumeCall++; - } else if (timelineType != Timeline.TimeLineEnum.ACCOUNT_TIMELINE) { + } else if (!isNotPinnedTimeline) { router(null); } } @@ -321,6 +322,7 @@ public class FragmentMastodonTimeline extends Fragment implements StatusAdapter. } publicTrendsDomain = getArguments().getString(Helper.ARG_REMOTE_INSTANCE_STRING, null); isViewInitialized = getArguments().getBoolean(Helper.ARG_INITIALIZE_VIEW, true); + isNotPinnedTimeline = isViewInitialized; tagTimeline = (TagTimeline) getArguments().getSerializable(Helper.ARG_TAG_TIMELINE); accountTimeline = (Account) getArguments().getSerializable(Helper.ARG_ACCOUNT); exclude_replies = !getArguments().getBoolean(Helper.ARG_SHOW_REPLIES, true);