summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Cohen <adamcohen@google.com>2012-03-27 16:45:39 -0700
committerAdam Cohen <adamcohen@google.com>2012-03-27 16:54:39 -0700
commitea889a294be004f4b1c21e9b874f9e63abfb8bd6 (patch)
treef9036bfcc382043530273e9c0f67cfcefb2e3454 /src
parent6a2a2899f79408f5123c860f2c6b06d150a10b0b (diff)
downloadandroid_packages_apps_Trebuchet-ea889a294be004f4b1c21e9b874f9e63abfb8bd6.tar.gz
android_packages_apps_Trebuchet-ea889a294be004f4b1c21e9b874f9e63abfb8bd6.tar.bz2
android_packages_apps_Trebuchet-ea889a294be004f4b1c21e9b874f9e63abfb8bd6.zip
Fix non-persistence of launcher (broken by reordering changes)
Change-Id: I6fb9cb2257844e642df9b5599188b1cfce35df9b
Diffstat (limited to 'src')
-rw-r--r--src/com/android/launcher2/CellLayout.java10
-rw-r--r--src/com/android/launcher2/Workspace.java16
2 files changed, 9 insertions, 17 deletions
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java
index 01ab8ec03..ce914e17a 100644
--- a/src/com/android/launcher2/CellLayout.java
+++ b/src/com/android/launcher2/CellLayout.java
@@ -2067,10 +2067,14 @@ public class CellLayout extends ViewGroup {
}
int childCount = mShortcutsAndWidgets.getChildCount();
for (int i = 0; i < childCount; i++) {
- LayoutParams lp = (LayoutParams) mShortcutsAndWidgets.getChildAt(i).getLayoutParams();
- lp.cellX = lp.tmpCellX;
- lp.cellY = lp.tmpCellY;
+ View child = mShortcutsAndWidgets.getChildAt(i);
+ LayoutParams lp = (LayoutParams) child.getLayoutParams();
+ ItemInfo info = (ItemInfo) child.getTag();
+ info.cellX = lp.cellX = lp.tmpCellX;
+ info.cellY = lp.cellY = lp.tmpCellY;
}
+ Workspace workspace = (Workspace) getParent();
+ workspace.updateItemLocationsInDatabase(this);
}
public void setUseTempCoords(boolean useTempCoords) {
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index c64782c96..2b69a1276 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -3112,7 +3112,7 @@ public class Workspace extends SmoothPagedView
// when dragging and dropping, just find the closest free spot
mTargetCell = mDragTargetLayout.createArea((int) mDragViewVisualCenter[0],
(int) mDragViewVisualCenter[1], 1, 1, 1, 1,
- null, mTargetCell, null, CellLayout.MODE_ON_DROP);
+ null, mTargetCell, null, CellLayout.MODE_ON_DROP_EXTERNAL);
} else {
cellLayout.findCellForSpan(mTargetCell, 1, 1);
}
@@ -3343,23 +3343,11 @@ public class Workspace extends SmoothPagedView
mDragOutline = null;
mDragInfo = null;
- saveWorkspaceStateToDb();
// Hide the scrolling indicator after you pick up an item
hideScrollingIndicator(false);
}
- public void saveWorkspaceStateToDb() {
- int count = getChildCount();
- for (int i = 0; i < count; i++) {
- CellLayout cl = (CellLayout) getChildAt(i);
- if (cl.isItemPlacementDirty()) {
- updateItemLocationsInDatabase(cl);
- cl.setItemPlacementDirty(false);
- }
- }
- }
-
- private void updateItemLocationsInDatabase(CellLayout cl) {
+ void updateItemLocationsInDatabase(CellLayout cl) {
int count = cl.getShortcutsAndWidgets().getChildCount();
int screen = indexOfChild(cl);
for (int i = 0; i < count; i++) {