From 84f47cd8f9379a1924cc151ca2b26370156e671d Mon Sep 17 00:00:00 2001 From: MrSluffy Date: Sun, 18 Feb 2024 16:57:30 +0800 Subject: [PATCH] properly set position when toggle is off --- src/com/android/launcher3/FastScrollRecyclerView.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/com/android/launcher3/FastScrollRecyclerView.java b/src/com/android/launcher3/FastScrollRecyclerView.java index 51a9192c8e..8915ff5b3c 100644 --- a/src/com/android/launcher3/FastScrollRecyclerView.java +++ b/src/com/android/launcher3/FastScrollRecyclerView.java @@ -27,6 +27,9 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.launcher3.compat.AccessibilityManagerCompat; import com.android.launcher3.views.RecyclerViewFastScroller; +import com.patrykmichalik.opto.core.PreferenceExtensionsKt; + +import app.lawnchair.preferences2.PreferenceManager2; /** @@ -42,6 +45,8 @@ public abstract class FastScrollRecyclerView extends RecyclerView { private int savedScrollPosition = RecyclerView.NO_POSITION; + private final PreferenceManager2 pref2; + public FastScrollRecyclerView(Context context) { this(context, null); } @@ -52,6 +57,7 @@ public abstract class FastScrollRecyclerView extends RecyclerView { public FastScrollRecyclerView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); + pref2 = PreferenceManager2.getInstance(context); } public void bindFastScrollbar(RecyclerViewFastScroller scrollbar) { @@ -88,7 +94,8 @@ public abstract class FastScrollRecyclerView extends RecyclerView { * Saved the scroll position */ public void saveScrollPosition() { - savedScrollPosition = computeVerticalScrollOffset(); + savedScrollPosition = PreferenceExtensionsKt.firstBlocking(pref2.getRememberPosition()) + ? computeVerticalScrollOffset() : 0; } /**