summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2011-08-03 11:25:08 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-08-03 11:25:08 -0700
commite5885b587c708162246225c9168ea14bc99b7ae4 (patch)
tree7064aca2e0865fa6b68427150c26f14e1a61fe21 /src
parentb2cdfb5f86bcf3e97598f9dd88415980d5a51f84 (diff)
parent7cfc2825c3a1029f962d2fc387ae2eaa85b51798 (diff)
downloadandroid_packages_apps_Trebuchet-e5885b587c708162246225c9168ea14bc99b7ae4.tar.gz
android_packages_apps_Trebuchet-e5885b587c708162246225c9168ea14bc99b7ae4.tar.bz2
android_packages_apps_Trebuchet-e5885b587c708162246225c9168ea14bc99b7ae4.zip
Merge "Fix UI bugs when dragging items"
Diffstat (limited to 'src')
-rw-r--r--src/com/android/launcher2/CellLayout.java6
-rw-r--r--src/com/android/launcher2/Workspace.java35
2 files changed, 18 insertions, 23 deletions
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java
index 9440b89d3..0a3c96dc4 100644
--- a/src/com/android/launcher2/CellLayout.java
+++ b/src/com/android/launcher2/CellLayout.java
@@ -661,8 +661,10 @@ public class CellLayout extends ViewGroup {
@Override
public void removeAllViewsInLayout() {
- clearOccupiedCells();
- mChildren.removeAllViewsInLayout();
+ if (mChildren.getChildCount() > 0) {
+ clearOccupiedCells();
+ mChildren.removeAllViewsInLayout();
+ }
}
public void removeViewWithoutMarkingCells(View view) {
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index 2c244405f..26c00ad8d 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -1137,16 +1137,18 @@ public class Workspace extends SmoothPagedView
scrollProgress = Math.min(scrollProgress, 1.0f);
scrollProgress = Math.max(scrollProgress, -1.0f);
- // If the current page (i) is being overscrolled, we use a different
- // set of rules for setting the background alpha multiplier.
- if ((mScrollX < 0 && i == 0) || (mScrollX > mMaxScrollX &&
- i == getChildCount() -1 )) {
- cl.setBackgroundAlphaMultiplier(
- overScrollBackgroundAlphaInterpolator(Math.abs(scrollProgress)));
- mOverScrollPageIndex = i;
- } else if (mOverScrollPageIndex != i) {
- cl.setBackgroundAlphaMultiplier(
- backgroundAlphaInterpolator(Math.abs(scrollProgress)));
+ if (mState != State.SPRING_LOADED) {
+ // If the current page (i) is being overscrolled, we use a different
+ // set of rules for setting the background alpha multiplier.
+ if ((mScrollX < 0 && i == 0) || (mScrollX > mMaxScrollX &&
+ i == getChildCount() -1 )) {
+ cl.setBackgroundAlphaMultiplier(
+ overScrollBackgroundAlphaInterpolator(Math.abs(scrollProgress)));
+ mOverScrollPageIndex = i;
+ } else if (mOverScrollPageIndex != i) {
+ cl.setBackgroundAlphaMultiplier(
+ backgroundAlphaInterpolator(Math.abs(scrollProgress)));
+ }
}
float rotation = WORKSPACE_ROTATION * scrollProgress;
@@ -1758,7 +1760,7 @@ public class Workspace extends SmoothPagedView
// Set the final alpha depending on whether we are fading side pages. On phone ui,
// we don't do any of the rotation, or the fading alpha in portrait. See the
// ctor and screenScrolled().
- if (mFadeInAdjacentScreens) {
+ if (mFadeInAdjacentScreens && !springLoaded) {
finalAlphaValue = (i == mCurrentPage) ? 1f : 0f;
} else {
finalAlphaValue = 1f;
@@ -2283,15 +2285,6 @@ public class Workspace extends SmoothPagedView
}
}
- // When you are in customization mode and drag to a particular screen, make that the
- // new current/default screen, so any subsequent taps add items to that screen
- if (!mLauncher.isAllAppsVisible()) {
- int dragTargetIndex = indexOfChild(mDragTargetLayout);
- if (dragTargetIndex > -1 && mCurrentPage != dragTargetIndex &&
- (isSmall() || mIsSwitchingState)) {
- scrollToNewPageWithoutMovingPages(dragTargetIndex);
- }
- }
CellLayout dropTargetLayout = mDragTargetLayout;
int snapScreen = -1;
@@ -2344,7 +2337,7 @@ public class Workspace extends SmoothPagedView
(int) mDragViewVisualCenter[1], mDragInfo.spanX, mDragInfo.spanY, cell,
dropTargetLayout, mTargetCell);
- if (mInScrollArea && !hasMovedIntoHotseat && mState != State.SPRING_LOADED) {
+ if (mCurrentPage != screen && !hasMovedIntoHotseat) {
snapScreen = screen;
snapToPage(screen);
}