Prevent NPE when shrinking workspace
Change-Id: I61f1793d4db5f3006f2e1bceb0f0c578b35e4e71
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index af7d080..f73d01f 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -1142,25 +1142,30 @@
mWaitingToShrinkState = shrinkState;
return;
}
- mIsSmall = true;
- mShrinkState = shrinkState;
-
// Stop any scrolling, move to the current page right away
setCurrentPage((mNextPage != INVALID_PAGE) ? mNextPage : mCurrentPage);
if (!mIsDragInProcess) {
- updateWhichPagesAcceptDrops(mShrinkState);
+ updateWhichPagesAcceptDrops(shrinkState);
}
- // we intercept and reject all touch events when we're small, so be sure to reset the state
- mTouchState = TOUCH_STATE_REST;
- mActivePointerId = INVALID_POINTER;
-
CellLayout currentPage = (CellLayout) getChildAt(mCurrentPage);
+ if (currentPage == null) {
+ Log.w(TAG, "currentPage is NULL! mCurrentPage " + mCurrentPage
+ + " mNextPage " + mNextPage);
+ return;
+ }
if (currentPage.getBackgroundAlphaMultiplier() < 1.0f) {
currentPage.setBackgroundAlpha(0.0f);
}
currentPage.setBackgroundAlphaMultiplier(1.0f);
+ mIsSmall = true;
+ mShrinkState = shrinkState;
+
+ // we intercept and reject all touch events when we're small, so be sure to reset the state
+ mTouchState = TOUCH_STATE_REST;
+ mActivePointerId = INVALID_POINTER;
+
final Resources res = getResources();
final int screenWidth = getWidth();
final int screenHeight = getHeight();