Ensures in all apps that the scrollposition and floating header

translation are reset correctly on closing all apps and switching tabs.

Change-Id: I86ba3e7bed4c27c485929af5920f76000d323875
This commit is contained in:
Mario Bertschler
2017-12-12 16:00:22 -08:00
parent d96072e63e
commit f66589db35
2 changed files with 6 additions and 12 deletions

View File

@@ -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() {