Fix bug 2646531 - regression in home screen bitmap caching

Looks like the code path for buildDrawingCache(false) has some bugs.
This reverts to the old code path and tries to manage the creation of
those caches a bit better.

Change-Id: Ic468e9db396c51f723454dc3832e0cd1c0c82004
This commit is contained in:
Adam Powell
2010-05-03 10:23:50 -07:00
parent 1896a6ec2d
commit fefa0ce22a
2 changed files with 5 additions and 2 deletions

View File

@@ -584,7 +584,7 @@ public class CellLayout extends ViewGroup {
final View view = getChildAt(i);
view.setDrawingCacheEnabled(enabled);
// Update the drawing caches
view.buildDrawingCache(false);
view.buildDrawingCache(true);
}
}

View File

@@ -666,7 +666,7 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag
// Scroll if the user moved far enough along the X axis
mTouchState = TOUCH_STATE_SCROLLING;
mLastMotionX = x;
enableChildrenCache(0, getChildCount());
enableChildrenCache(mCurrentScreen - 1, mCurrentScreen + 1);
}
// Either way, cancel any pending longpress
if (mAllowLongPress) {
@@ -868,6 +868,9 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag
// Remember where the motion event started
mLastMotionX = ev.getX();
mActivePointerId = ev.getPointerId(0);
if (mTouchState == TOUCH_STATE_SCROLLING) {
enableChildrenCache(mCurrentScreen - 1, mCurrentScreen + 1);
}
break;
case MotionEvent.ACTION_MOVE:
if (mTouchState == TOUCH_STATE_SCROLLING) {