diff options
author | Mario Bertschler <bmario@google.com> | 2017-12-12 16:00:22 -0800 |
---|---|---|
committer | Mario Bertschler <bmario@google.com> | 2017-12-13 09:22:50 -0800 |
commit | f66589db3501e34ff9d81dd1ded4464c5be39218 (patch) | |
tree | 9c70ca03aba6730cb5b4259e84507a6b3bdf24fc /src/com/android/launcher3 | |
parent | d96072e63e6eb82542f0d585b955d03b14c2adf1 (diff) | |
download | android_packages_apps_Trebuchet-f66589db3501e34ff9d81dd1ded4464c5be39218.tar.gz android_packages_apps_Trebuchet-f66589db3501e34ff9d81dd1ded4464c5be39218.tar.bz2 android_packages_apps_Trebuchet-f66589db3501e34ff9d81dd1ded4464c5be39218.zip |
Ensures in all apps that the scrollposition and floating header
translation are reset correctly on closing all apps and switching tabs.
Change-Id: I86ba3e7bed4c27c485929af5920f76000d323875
Diffstat (limited to 'src/com/android/launcher3')
-rw-r--r-- | src/com/android/launcher3/allapps/AllAppsContainerView.java | 1 | ||||
-rw-r--r-- | src/com/android/launcher3/allapps/FloatingHeaderView.java | 17 |
2 files changed, 6 insertions, 12 deletions
diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java index 7b89c5c43..f558568c8 100644 --- a/src/com/android/launcher3/allapps/AllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java @@ -495,6 +495,7 @@ public class AllAppsContainerView extends RelativeLayout implements DragSource, public void onPageSelected(int pos) { tabs.updateTabTextColor(pos); mHeader.setMainActive(pos == 0); + reset(); applyTouchDelegate(); if (mAH[pos].recyclerView != null) { mAH[pos].recyclerView.bindFastScrollbar(); diff --git a/src/com/android/launcher3/allapps/FloatingHeaderView.java b/src/com/android/launcher3/allapps/FloatingHeaderView.java index dc3afb5be..409985c23 100644 --- a/src/com/android/launcher3/allapps/FloatingHeaderView.java +++ b/src/com/android/launcher3/allapps/FloatingHeaderView.java @@ -107,6 +107,7 @@ public class FloatingHeaderView extends RelativeLayout implements mWorkRV = setupRV(mWorkRV, mAH[AllAppsContainerView.AdapterHolder.WORK].recyclerView); mParent = (ViewGroup) mMainRV.getParent(); setMainActive(true); + reset(); setupDivider(); } @@ -130,8 +131,6 @@ public class FloatingHeaderView extends RelativeLayout implements public void setMainActive(boolean active) { mCurrentRV = active ? mMainRV : mWorkRV; - mSnappedScrolledY = mCurrentRV.getCurrentScrollY() - mMaxTranslation; - setExpanded(true); } public PredictionRowView getPredictionRow() { @@ -142,10 +141,6 @@ public class FloatingHeaderView extends RelativeLayout implements return mDivider; } - public void reset() { - setExpanded(true); - } - private boolean canSnapAt(int currentScrollY) { return Math.abs(currentScrollY) <= mPredictionRow.getHeight(); } @@ -194,16 +189,14 @@ public class FloatingHeaderView extends RelativeLayout implements } } - private void setExpanded(boolean expand) { - int translateTo = expand ? 0 : -mMaxTranslation; + public void reset() { + int translateTo = 0; mAnimator.setIntValues(mTranslationY, translateTo); mAnimator.addUpdateListener(this); mAnimator.setDuration(150); mAnimator.start(); - mHeaderCollapsed = !expand; - mSnappedScrolledY = expand - ? mCurrentRV.getCurrentScrollY() - mMaxTranslation - : mCurrentRV.getCurrentScrollY(); + mHeaderCollapsed = false; + mSnappedScrolledY = -mMaxTranslation; } public boolean isExpanded() { |