Loading quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ public class StaggeredWorkspaceAnim { for (int i = hotseatIcons.getChildCount() - 1; i >= 0; i--) { View child = hotseatIcons.getChildAt(i); CellLayoutLayoutParams lp = ((CellLayoutLayoutParams) child.getLayoutParams()); addStaggeredAnimationForView(child, lp.cellY + 1, totalRows, duration); addStaggeredAnimationForView(child, lp.getCellY() + 1, totalRows, duration); } } else { final int hotseatRow, qsbRow; Loading Loading @@ -194,7 +194,7 @@ public class StaggeredWorkspaceAnim { for (int i = itemsContainer.getChildCount() - 1; i >= 0; i--) { View child = itemsContainer.getChildAt(i); CellLayoutLayoutParams lp = ((CellLayoutLayoutParams) child.getLayoutParams()); addStaggeredAnimationForView(child, lp.cellY + lp.cellVSpan, totalRows, duration); addStaggeredAnimationForView(child, lp.getCellY() + lp.cellVSpan, totalRows, duration); } mAnimators.addListener(new AnimatorListenerAdapter() { Loading src/com/android/launcher3/AppWidgetResizeFrame.java +8 −6 Original line number Diff line number Diff line Loading @@ -268,8 +268,10 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O CellLayoutLayoutParams lp = (CellLayoutLayoutParams) mWidgetView.getLayoutParams(); ItemInfo widgetInfo = (ItemInfo) mWidgetView.getTag(); lp.cellX = lp.tmpCellX = widgetInfo.cellX; lp.cellY = lp.tmpCellY = widgetInfo.cellY; lp.setCellX(widgetInfo.cellX); lp.setTmpCellX(widgetInfo.cellX); lp.setCellY(widgetInfo.cellY); lp.setTmpCellY(widgetInfo.cellY); lp.cellHSpan = widgetInfo.spanX; lp.cellVSpan = widgetInfo.spanY; lp.isLockedToGrid = true; Loading Loading @@ -425,8 +427,8 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O int spanX = lp.cellHSpan; int spanY = lp.cellVSpan; int cellX = lp.useTmpCoords ? lp.tmpCellX : lp.cellX; int cellY = lp.useTmpCoords ? lp.tmpCellY : lp.cellY; int cellX = lp.useTmpCoords ? lp.getTmpCellX() : lp.getCellX(); int cellY = lp.useTmpCoords ? lp.getTmpCellY() : lp.getCellY(); // For each border, we bound the resizing based on the minimum width, and the maximum // expandability. Loading Loading @@ -467,8 +469,8 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O mLauncher.getString(R.string.widget_resized, spanX, spanY)); } lp.tmpCellX = cellX; lp.tmpCellY = cellY; lp.setTmpCellX(cellX); lp.setTmpCellY(cellY); lp.cellHSpan = spanX; lp.cellVSpan = spanY; mRunningVInc += vSpanDelta; Loading src/com/android/launcher3/CellLayout.java +31 −27 Original line number Diff line number Diff line Loading @@ -623,8 +623,8 @@ public class CellLayout extends ViewGroup { if (alpha <= 0) continue; mVisualizeGridPaint.setAlpha(255); int x = mDragOutlines[i].cellX; int y = mDragOutlines[i].cellY; int x = mDragOutlines[i].getCellX(); int y = mDragOutlines[i].getCellY(); int spanX = mDragOutlines[i].cellHSpan; int spanY = mDragOutlines[i].cellVSpan; Loading Loading @@ -764,7 +764,8 @@ public class CellLayout extends ViewGroup { // Generate an id for each view, this assumes we have at most 256x256 cells // per workspace screen if (lp.cellX >= 0 && lp.cellX <= mCountX - 1 && lp.cellY >= 0 && lp.cellY <= mCountY - 1) { if (lp.getCellX() >= 0 && lp.getCellX() <= mCountX - 1 && lp.getCellY() >= 0 && lp.getCellY() <= mCountY - 1) { // If the horizontal or vertical span is set to -1, it is taken to // mean that it spans the extent of the CellLayout if (lp.cellHSpan < 0) lp.cellHSpan = mCountX; Loading Loading @@ -1072,7 +1073,7 @@ public class CellLayout extends ViewGroup { if (adjustOccupied) { GridOccupancy occupied = permanent ? mOccupied : mTmpOccupied; occupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, false); occupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, false); occupied.markCells(cellX, cellY, lp.cellHSpan, lp.cellVSpan, true); } Loading @@ -1083,11 +1084,11 @@ public class CellLayout extends ViewGroup { final int oldY = lp.y; lp.isLockedToGrid = true; if (permanent) { lp.cellX = info.cellX = cellX; lp.cellY = info.cellY = cellY; lp.setCellX(info.cellX = cellX); lp.setCellY(info.cellY = cellY); } else { lp.tmpCellX = cellX; lp.tmpCellY = cellY; lp.setTmpCellX(cellX); lp.setTmpCellY(cellY); } clc.setupLp(child); final int newX = lp.x; Loading Loading @@ -1167,8 +1168,8 @@ public class CellLayout extends ViewGroup { mDragOutlineCurrent = (oldIndex + 1) % mDragOutlines.length; CellLayoutLayoutParams cell = mDragOutlines[mDragOutlineCurrent]; cell.cellX = cellX; cell.cellY = cellY; cell.setCellX(cellX); cell.setCellY(cellY); cell.cellHSpan = spanX; cell.cellVSpan = spanY; Loading Loading @@ -1385,8 +1386,8 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); CellAndSpan c = solution.map.get(child); if (c != null) { lp.tmpCellX = c.cellX; lp.tmpCellY = c.cellY; lp.setTmpCellX(c.cellX); lp.setTmpCellY(c.cellY); lp.cellHSpan = c.spanX; lp.cellVSpan = c.spanY; mTmpOccupied.markCells(c, true); Loading Loading @@ -1433,7 +1434,7 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if (c != null && !skip && (child instanceof Reorderable)) { ReorderPreviewAnimation rha = new ReorderPreviewAnimation((Reorderable) child, mode, lp.cellX, lp.cellY, c.cellX, c.cellY, c.spanX, c.spanY); mode, lp.getCellX(), lp.getCellY(), c.cellX, c.cellY, c.spanX, c.spanY); rha.animate(); } } Loading Loading @@ -1626,12 +1627,14 @@ public class CellLayout extends ViewGroup { // We do a null check here because the item info can be null in the case of the // AllApps button in the hotseat. if (info != null && child != dragView) { final boolean requiresDbUpdate = (info.cellX != lp.tmpCellX || info.cellY != lp.tmpCellY || info.spanX != lp.cellHSpan final boolean requiresDbUpdate = (info.cellX != lp.getTmpCellX() || info.cellY != lp.getTmpCellY() || info.spanX != lp.cellHSpan || info.spanY != lp.cellVSpan); info.cellX = lp.cellX = lp.tmpCellX; info.cellY = lp.cellY = lp.tmpCellY; lp.setCellX(lp.getTmpCellX()); info.cellX = lp.getTmpCellX(); info.cellY = lp.getTmpCellY(); lp.setCellY(lp.getTmpCellY()); info.spanX = lp.cellHSpan; info.spanY = lp.cellVSpan; Loading Loading @@ -1697,7 +1700,8 @@ public class CellLayout extends ViewGroup { if (child == dragView) continue; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); r1.set(lp.cellX, lp.cellY, lp.cellX + lp.cellHSpan, lp.cellY + lp.cellVSpan); r1.set(lp.getCellX(), lp.getCellY(), lp.getCellX() + lp.cellHSpan, lp.getCellY() + lp.cellVSpan); if (Rect.intersects(r0, r1)) { mIntersectingViews.add(child); if (boundingRect != null) { Loading @@ -1723,11 +1727,11 @@ public class CellLayout extends ViewGroup { View child = mShortcutsAndWidgets.getChildAt(i); CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY) { lp.tmpCellX = lp.cellX; lp.tmpCellY = lp.cellY; animateChildToPosition(child, lp.cellX, lp.cellY, REORDER_ANIMATION_DURATION, 0, false, false); if (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY()) { lp.setTmpCellX(lp.getCellX()); lp.setTmpCellY(lp.getCellY()); animateChildToPosition(child, lp.getCellX(), lp.getCellY(), REORDER_ANIMATION_DURATION, 0, false, false); } } setItemPlacementDirty(false); Loading Loading @@ -2449,9 +2453,9 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); CellAndSpan c; if (temp) { c = new CellAndSpan(lp.tmpCellX, lp.tmpCellY, lp.cellHSpan, lp.cellVSpan); c = new CellAndSpan(lp.getTmpCellX(), lp.getTmpCellY(), lp.cellHSpan, lp.cellVSpan); } else { c = new CellAndSpan(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan); c = new CellAndSpan(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan); } solution.add(child, c); } Loading Loading @@ -2794,7 +2798,7 @@ public class CellLayout extends ViewGroup { if (view == null || view.getParent() != mShortcutsAndWidgets) return; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) view.getLayoutParams(); mOccupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, true); mOccupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, true); } public void markCellsAsUnoccupiedForView(View view) { Loading @@ -2807,7 +2811,7 @@ public class CellLayout extends ViewGroup { if (view == null || view.getParent() != mShortcutsAndWidgets) return; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) view.getLayoutParams(); mOccupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, false); mOccupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, false); } public int getDesiredWidth() { Loading src/com/android/launcher3/ShortcutAndWidgetContainer.java +3 −3 Original line number Diff line number Diff line Loading @@ -83,8 +83,8 @@ public class ShortcutAndWidgetContainer extends ViewGroup implements FolderIcon. View child = getChildAt(i); CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if ((lp.cellX <= cellX) && (cellX < lp.cellX + lp.cellHSpan) && (lp.cellY <= cellY) && (cellY < lp.cellY + lp.cellVSpan)) { if ((lp.getCellX() <= cellX) && (cellX < lp.getCellX() + lp.cellHSpan) && (lp.getCellY() <= cellY) && (cellY < lp.getCellY() + lp.cellVSpan)) { return child; } } Loading Loading @@ -260,7 +260,7 @@ public class ShortcutAndWidgetContainer extends ViewGroup implements FolderIcon. lp.canReorder = false; if (mContainerType == HOTSEAT) { CellLayout cl = (CellLayout) getParent(); cl.setFolderLeaveBehindCell(lp.cellX, lp.cellY); cl.setFolderLeaveBehindCell(lp.getCellX(), lp.getCellY()); } } Loading src/com/android/launcher3/Workspace.java +11 −7 Original line number Diff line number Diff line Loading @@ -1757,7 +1757,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> boolean willCreateUserFolder(ItemInfo info, View dropOverView, boolean considerTimeout) { if (dropOverView != null) { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) dropOverView.getLayoutParams(); if (lp.useTmpCoords && (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY)) { if (lp.useTmpCoords && (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY())) { return false; } } Loading Loading @@ -1792,7 +1793,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> boolean willAddToExistingUserFolder(ItemInfo dragInfo, View dropOverView) { if (dropOverView != null) { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) dropOverView.getLayoutParams(); if (lp.useTmpCoords && (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY)) { if (lp.useTmpCoords && (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY())) { return false; } } Loading Loading @@ -2009,8 +2011,10 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // update the item's position after drop CellLayoutLayoutParams lp = (CellLayoutLayoutParams) cell.getLayoutParams(); lp.cellX = lp.tmpCellX = mTargetCell[0]; lp.cellY = lp.tmpCellY = mTargetCell[1]; lp.setTmpCellX(mTargetCell[0]); lp.setCellX(mTargetCell[0]); lp.setTmpCellY(mTargetCell[1]); lp.setCellY(mTargetCell[1]); lp.cellHSpan = item.spanX; lp.cellVSpan = item.spanY; lp.isLockedToGrid = true; Loading @@ -2024,7 +2028,7 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> (LauncherAppWidgetHostView) cell, dropTargetLayout); } mLauncher.getModelWriter().modifyItemInDatabase(info, container, screenId, lp.cellX, lp.cellY, item.spanX, item.spanY); lp.getCellX(), lp.getCellY(), item.spanX, item.spanY); } else { if (!returnToOriginalCellToPreventShuffling) { onNoCellFound(dropTargetLayout, d.dragInfo, d.logInstanceId); Loading @@ -2035,8 +2039,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // If we can't find a drop location, we return the item to its original position CellLayoutLayoutParams lp = (CellLayoutLayoutParams) cell.getLayoutParams(); mTargetCell[0] = lp.cellX; mTargetCell[1] = lp.cellY; mTargetCell[0] = lp.getCellX(); mTargetCell[1] = lp.getCellY(); CellLayout layout = (CellLayout) cell.getParent().getParent(); layout.markCellsAsOccupiedForView(cell); } Loading Loading
quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ public class StaggeredWorkspaceAnim { for (int i = hotseatIcons.getChildCount() - 1; i >= 0; i--) { View child = hotseatIcons.getChildAt(i); CellLayoutLayoutParams lp = ((CellLayoutLayoutParams) child.getLayoutParams()); addStaggeredAnimationForView(child, lp.cellY + 1, totalRows, duration); addStaggeredAnimationForView(child, lp.getCellY() + 1, totalRows, duration); } } else { final int hotseatRow, qsbRow; Loading Loading @@ -194,7 +194,7 @@ public class StaggeredWorkspaceAnim { for (int i = itemsContainer.getChildCount() - 1; i >= 0; i--) { View child = itemsContainer.getChildAt(i); CellLayoutLayoutParams lp = ((CellLayoutLayoutParams) child.getLayoutParams()); addStaggeredAnimationForView(child, lp.cellY + lp.cellVSpan, totalRows, duration); addStaggeredAnimationForView(child, lp.getCellY() + lp.cellVSpan, totalRows, duration); } mAnimators.addListener(new AnimatorListenerAdapter() { Loading
src/com/android/launcher3/AppWidgetResizeFrame.java +8 −6 Original line number Diff line number Diff line Loading @@ -268,8 +268,10 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O CellLayoutLayoutParams lp = (CellLayoutLayoutParams) mWidgetView.getLayoutParams(); ItemInfo widgetInfo = (ItemInfo) mWidgetView.getTag(); lp.cellX = lp.tmpCellX = widgetInfo.cellX; lp.cellY = lp.tmpCellY = widgetInfo.cellY; lp.setCellX(widgetInfo.cellX); lp.setTmpCellX(widgetInfo.cellX); lp.setCellY(widgetInfo.cellY); lp.setTmpCellY(widgetInfo.cellY); lp.cellHSpan = widgetInfo.spanX; lp.cellVSpan = widgetInfo.spanY; lp.isLockedToGrid = true; Loading Loading @@ -425,8 +427,8 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O int spanX = lp.cellHSpan; int spanY = lp.cellVSpan; int cellX = lp.useTmpCoords ? lp.tmpCellX : lp.cellX; int cellY = lp.useTmpCoords ? lp.tmpCellY : lp.cellY; int cellX = lp.useTmpCoords ? lp.getTmpCellX() : lp.getCellX(); int cellY = lp.useTmpCoords ? lp.getTmpCellY() : lp.getCellY(); // For each border, we bound the resizing based on the minimum width, and the maximum // expandability. Loading Loading @@ -467,8 +469,8 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O mLauncher.getString(R.string.widget_resized, spanX, spanY)); } lp.tmpCellX = cellX; lp.tmpCellY = cellY; lp.setTmpCellX(cellX); lp.setTmpCellY(cellY); lp.cellHSpan = spanX; lp.cellVSpan = spanY; mRunningVInc += vSpanDelta; Loading
src/com/android/launcher3/CellLayout.java +31 −27 Original line number Diff line number Diff line Loading @@ -623,8 +623,8 @@ public class CellLayout extends ViewGroup { if (alpha <= 0) continue; mVisualizeGridPaint.setAlpha(255); int x = mDragOutlines[i].cellX; int y = mDragOutlines[i].cellY; int x = mDragOutlines[i].getCellX(); int y = mDragOutlines[i].getCellY(); int spanX = mDragOutlines[i].cellHSpan; int spanY = mDragOutlines[i].cellVSpan; Loading Loading @@ -764,7 +764,8 @@ public class CellLayout extends ViewGroup { // Generate an id for each view, this assumes we have at most 256x256 cells // per workspace screen if (lp.cellX >= 0 && lp.cellX <= mCountX - 1 && lp.cellY >= 0 && lp.cellY <= mCountY - 1) { if (lp.getCellX() >= 0 && lp.getCellX() <= mCountX - 1 && lp.getCellY() >= 0 && lp.getCellY() <= mCountY - 1) { // If the horizontal or vertical span is set to -1, it is taken to // mean that it spans the extent of the CellLayout if (lp.cellHSpan < 0) lp.cellHSpan = mCountX; Loading Loading @@ -1072,7 +1073,7 @@ public class CellLayout extends ViewGroup { if (adjustOccupied) { GridOccupancy occupied = permanent ? mOccupied : mTmpOccupied; occupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, false); occupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, false); occupied.markCells(cellX, cellY, lp.cellHSpan, lp.cellVSpan, true); } Loading @@ -1083,11 +1084,11 @@ public class CellLayout extends ViewGroup { final int oldY = lp.y; lp.isLockedToGrid = true; if (permanent) { lp.cellX = info.cellX = cellX; lp.cellY = info.cellY = cellY; lp.setCellX(info.cellX = cellX); lp.setCellY(info.cellY = cellY); } else { lp.tmpCellX = cellX; lp.tmpCellY = cellY; lp.setTmpCellX(cellX); lp.setTmpCellY(cellY); } clc.setupLp(child); final int newX = lp.x; Loading Loading @@ -1167,8 +1168,8 @@ public class CellLayout extends ViewGroup { mDragOutlineCurrent = (oldIndex + 1) % mDragOutlines.length; CellLayoutLayoutParams cell = mDragOutlines[mDragOutlineCurrent]; cell.cellX = cellX; cell.cellY = cellY; cell.setCellX(cellX); cell.setCellY(cellY); cell.cellHSpan = spanX; cell.cellVSpan = spanY; Loading Loading @@ -1385,8 +1386,8 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); CellAndSpan c = solution.map.get(child); if (c != null) { lp.tmpCellX = c.cellX; lp.tmpCellY = c.cellY; lp.setTmpCellX(c.cellX); lp.setTmpCellY(c.cellY); lp.cellHSpan = c.spanX; lp.cellVSpan = c.spanY; mTmpOccupied.markCells(c, true); Loading Loading @@ -1433,7 +1434,7 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if (c != null && !skip && (child instanceof Reorderable)) { ReorderPreviewAnimation rha = new ReorderPreviewAnimation((Reorderable) child, mode, lp.cellX, lp.cellY, c.cellX, c.cellY, c.spanX, c.spanY); mode, lp.getCellX(), lp.getCellY(), c.cellX, c.cellY, c.spanX, c.spanY); rha.animate(); } } Loading Loading @@ -1626,12 +1627,14 @@ public class CellLayout extends ViewGroup { // We do a null check here because the item info can be null in the case of the // AllApps button in the hotseat. if (info != null && child != dragView) { final boolean requiresDbUpdate = (info.cellX != lp.tmpCellX || info.cellY != lp.tmpCellY || info.spanX != lp.cellHSpan final boolean requiresDbUpdate = (info.cellX != lp.getTmpCellX() || info.cellY != lp.getTmpCellY() || info.spanX != lp.cellHSpan || info.spanY != lp.cellVSpan); info.cellX = lp.cellX = lp.tmpCellX; info.cellY = lp.cellY = lp.tmpCellY; lp.setCellX(lp.getTmpCellX()); info.cellX = lp.getTmpCellX(); info.cellY = lp.getTmpCellY(); lp.setCellY(lp.getTmpCellY()); info.spanX = lp.cellHSpan; info.spanY = lp.cellVSpan; Loading Loading @@ -1697,7 +1700,8 @@ public class CellLayout extends ViewGroup { if (child == dragView) continue; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); r1.set(lp.cellX, lp.cellY, lp.cellX + lp.cellHSpan, lp.cellY + lp.cellVSpan); r1.set(lp.getCellX(), lp.getCellY(), lp.getCellX() + lp.cellHSpan, lp.getCellY() + lp.cellVSpan); if (Rect.intersects(r0, r1)) { mIntersectingViews.add(child); if (boundingRect != null) { Loading @@ -1723,11 +1727,11 @@ public class CellLayout extends ViewGroup { View child = mShortcutsAndWidgets.getChildAt(i); CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY) { lp.tmpCellX = lp.cellX; lp.tmpCellY = lp.cellY; animateChildToPosition(child, lp.cellX, lp.cellY, REORDER_ANIMATION_DURATION, 0, false, false); if (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY()) { lp.setTmpCellX(lp.getCellX()); lp.setTmpCellY(lp.getCellY()); animateChildToPosition(child, lp.getCellX(), lp.getCellY(), REORDER_ANIMATION_DURATION, 0, false, false); } } setItemPlacementDirty(false); Loading Loading @@ -2449,9 +2453,9 @@ public class CellLayout extends ViewGroup { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); CellAndSpan c; if (temp) { c = new CellAndSpan(lp.tmpCellX, lp.tmpCellY, lp.cellHSpan, lp.cellVSpan); c = new CellAndSpan(lp.getTmpCellX(), lp.getTmpCellY(), lp.cellHSpan, lp.cellVSpan); } else { c = new CellAndSpan(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan); c = new CellAndSpan(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan); } solution.add(child, c); } Loading Loading @@ -2794,7 +2798,7 @@ public class CellLayout extends ViewGroup { if (view == null || view.getParent() != mShortcutsAndWidgets) return; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) view.getLayoutParams(); mOccupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, true); mOccupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, true); } public void markCellsAsUnoccupiedForView(View view) { Loading @@ -2807,7 +2811,7 @@ public class CellLayout extends ViewGroup { if (view == null || view.getParent() != mShortcutsAndWidgets) return; CellLayoutLayoutParams lp = (CellLayoutLayoutParams) view.getLayoutParams(); mOccupied.markCells(lp.cellX, lp.cellY, lp.cellHSpan, lp.cellVSpan, false); mOccupied.markCells(lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan, false); } public int getDesiredWidth() { Loading
src/com/android/launcher3/ShortcutAndWidgetContainer.java +3 −3 Original line number Diff line number Diff line Loading @@ -83,8 +83,8 @@ public class ShortcutAndWidgetContainer extends ViewGroup implements FolderIcon. View child = getChildAt(i); CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); if ((lp.cellX <= cellX) && (cellX < lp.cellX + lp.cellHSpan) && (lp.cellY <= cellY) && (cellY < lp.cellY + lp.cellVSpan)) { if ((lp.getCellX() <= cellX) && (cellX < lp.getCellX() + lp.cellHSpan) && (lp.getCellY() <= cellY) && (cellY < lp.getCellY() + lp.cellVSpan)) { return child; } } Loading Loading @@ -260,7 +260,7 @@ public class ShortcutAndWidgetContainer extends ViewGroup implements FolderIcon. lp.canReorder = false; if (mContainerType == HOTSEAT) { CellLayout cl = (CellLayout) getParent(); cl.setFolderLeaveBehindCell(lp.cellX, lp.cellY); cl.setFolderLeaveBehindCell(lp.getCellX(), lp.getCellY()); } } Loading
src/com/android/launcher3/Workspace.java +11 −7 Original line number Diff line number Diff line Loading @@ -1757,7 +1757,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> boolean willCreateUserFolder(ItemInfo info, View dropOverView, boolean considerTimeout) { if (dropOverView != null) { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) dropOverView.getLayoutParams(); if (lp.useTmpCoords && (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY)) { if (lp.useTmpCoords && (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY())) { return false; } } Loading Loading @@ -1792,7 +1793,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> boolean willAddToExistingUserFolder(ItemInfo dragInfo, View dropOverView) { if (dropOverView != null) { CellLayoutLayoutParams lp = (CellLayoutLayoutParams) dropOverView.getLayoutParams(); if (lp.useTmpCoords && (lp.tmpCellX != lp.cellX || lp.tmpCellY != lp.cellY)) { if (lp.useTmpCoords && (lp.getTmpCellX() != lp.getCellX() || lp.getTmpCellY() != lp.getCellY())) { return false; } } Loading Loading @@ -2009,8 +2011,10 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // update the item's position after drop CellLayoutLayoutParams lp = (CellLayoutLayoutParams) cell.getLayoutParams(); lp.cellX = lp.tmpCellX = mTargetCell[0]; lp.cellY = lp.tmpCellY = mTargetCell[1]; lp.setTmpCellX(mTargetCell[0]); lp.setCellX(mTargetCell[0]); lp.setTmpCellY(mTargetCell[1]); lp.setCellY(mTargetCell[1]); lp.cellHSpan = item.spanX; lp.cellVSpan = item.spanY; lp.isLockedToGrid = true; Loading @@ -2024,7 +2028,7 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> (LauncherAppWidgetHostView) cell, dropTargetLayout); } mLauncher.getModelWriter().modifyItemInDatabase(info, container, screenId, lp.cellX, lp.cellY, item.spanX, item.spanY); lp.getCellX(), lp.getCellY(), item.spanX, item.spanY); } else { if (!returnToOriginalCellToPreventShuffling) { onNoCellFound(dropTargetLayout, d.dragInfo, d.logInstanceId); Loading @@ -2035,8 +2039,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // If we can't find a drop location, we return the item to its original position CellLayoutLayoutParams lp = (CellLayoutLayoutParams) cell.getLayoutParams(); mTargetCell[0] = lp.cellX; mTargetCell[1] = lp.cellY; mTargetCell[0] = lp.getCellX(); mTargetCell[1] = lp.getCellY(); CellLayout layout = (CellLayout) cell.getParent().getParent(); layout.markCellsAsOccupiedForView(cell); } Loading