diff options
author | Patrick Dubroy <dubroy@google.com> | 2011-01-18 17:16:07 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-01-18 17:16:07 -0800 |
commit | ca1d18ef1c7d96627df88e17d3225f15326b1a4e (patch) | |
tree | 018e92d22bf43b1a2c115b2705975cc845c7487b /src/com | |
parent | 2986910b72eaeaf7823b669896c81ebf144d8c67 (diff) | |
parent | 0dfcf68b58bec1ac74f9b8700e3357f8e6d8b4a3 (diff) | |
download | packages_apps_trebuchet-ca1d18ef1c7d96627df88e17d3225f15326b1a4e.zip packages_apps_trebuchet-ca1d18ef1c7d96627df88e17d3225f15326b1a4e.tar.gz packages_apps_trebuchet-ca1d18ef1c7d96627df88e17d3225f15326b1a4e.tar.bz2 |
Merge "Prevent NPE when shrinking workspace" into honeycomb
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/launcher2/Workspace.java | 21 |
1 files changed, 13 insertions, 8 deletions
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 @@ public class Workspace extends SmoothPagedView 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(); |