Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 25611b18 authored by Sunny Goyal's avatar Sunny Goyal
Browse files

Adding nulls check in various drop-drop events

The original patch by motorola had another check, but the 2nd check
is wrong as in that case, there would be a nullpointer exception just
after the check for the same reason.

issue: 15518908
issue: 15516428

Change-Id: I85c5fb3541b7f837e6c5295e97e45162a4120e39
parent 82cc3fe6
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -3102,7 +3102,12 @@ public class Workspace extends SmoothPagedView
                    final ItemInfo info = (ItemInfo) cell.getTag();
                    if (hasMovedLayouts) {
                        // Reparent the view
                        getParentCellLayoutForView(cell).removeView(cell);
                        CellLayout parentCell = getParentCellLayoutForView(cell);
                        if (parentCell != null) {
                            parentCell.removeView(cell);
                        } else if (LauncherAppState.isDogfoodBuild()) {
                            throw new NullPointerException("mDragInfo.cell has null parent");
                        }
                        addInScreen(cell, container, screenId, mTargetCell[0], mTargetCell[1],
                                info.spanX, info.spanY);
                    }
@@ -3561,6 +3566,12 @@ public class Workspace extends SmoothPagedView
        Rect r = new Rect();
        CellLayout layout = null;
        ItemInfo item = (ItemInfo) d.dragInfo;
        if (item == null) {
            if (LauncherAppState.isDogfoodBuild()) {
                throw new NullPointerException("DragObject has null info");
            }
            return;
        }

        // Ensure that we have proper spans for the item that we are dropping
        if (item.spanX < 0 || item.spanY < 0) throw new RuntimeException("Improper spans found");
@@ -4188,6 +4199,8 @@ public class Workspace extends SmoothPagedView
                CellLayout parentCell = getParentCellLayoutForView(mDragInfo.cell);
                if (parentCell != null) {
                    parentCell.removeView(mDragInfo.cell);
                } else if (LauncherAppState.isDogfoodBuild()) {
                    throw new NullPointerException("mDragInfo.cell has null parent");
                }
                if (mDragInfo.cell instanceof DropTarget) {
                    mDragController.removeDropTarget((DropTarget) mDragInfo.cell);