Show side pages when exiting spring-loaded mode
Bug: 6132598 Change-Id: I2bf9025b7ac66d020522448b003905cb37c87587
This commit is contained in:
@@ -721,20 +721,21 @@ public abstract class PagedView extends ViewGroup {
|
||||
|
||||
protected void getVisiblePages(int[] range) {
|
||||
final int pageCount = getChildCount();
|
||||
|
||||
if (pageCount > 0) {
|
||||
final int screenWidth = getMeasuredWidth();
|
||||
int leftScreen = 0;
|
||||
int rightScreen = 0;
|
||||
View currPage = getPageAt(leftScreen);
|
||||
while (leftScreen < pageCount - 1 &&
|
||||
currPage.getRight() - currPage.getPaddingRight() < mScrollX) {
|
||||
currPage.getX() + currPage.getWidth() - currPage.getPaddingRight() < mScrollX) {
|
||||
leftScreen++;
|
||||
currPage = getPageAt(leftScreen);
|
||||
}
|
||||
rightScreen = leftScreen;
|
||||
currPage = getPageAt(rightScreen + 1);
|
||||
while (rightScreen < pageCount - 1 &&
|
||||
currPage.getLeft() + currPage.getPaddingLeft() < mScrollX + screenWidth) {
|
||||
currPage.getX() - currPage.getPaddingLeft() < mScrollX + screenWidth) {
|
||||
rightScreen++;
|
||||
currPage = getPageAt(rightScreen + 1);
|
||||
}
|
||||
|
||||
@@ -1568,6 +1568,7 @@ public class Workspace extends SmoothPagedView
|
||||
|
||||
final State oldState = mState;
|
||||
final boolean oldStateIsNormal = (oldState == State.NORMAL);
|
||||
final boolean oldStateIsSpringLoaded = (oldState == State.SPRING_LOADED);
|
||||
final boolean oldStateIsSmall = (oldState == State.SMALL);
|
||||
mState = state;
|
||||
final boolean stateIsNormal = (state == State.NORMAL);
|
||||
@@ -1608,8 +1609,9 @@ public class Workspace extends SmoothPagedView
|
||||
if ((oldStateIsSmall && stateIsNormal) ||
|
||||
(oldStateIsNormal && stateIsSmall)) {
|
||||
// To/from workspace - only show the current page unless the transition is not
|
||||
// animated and the animation end callback below doesn't run
|
||||
if (i == mCurrentPage || !animated) {
|
||||
// animated and the animation end callback below doesn't run;
|
||||
// or, if we're in spring-loaded mode
|
||||
if (i == mCurrentPage || !animated || oldStateIsSpringLoaded) {
|
||||
finalAlpha = 1f;
|
||||
finalAlphaMultiplierValue = 0f;
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user