HACK: Fixing major persistence regression associated with extra screen to the left

-> Also adding ability to delete shortcuts.

Change-Id: I263baf813eae9089f11288494d575a99f0e859c3
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 2634e21..7f3c482 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -840,7 +840,7 @@
         mWorkspace.addView(customScreen, 0);
 
         // Ensure that the current page and default page are maintained.
-        mWorkspace.incrementDefaultScreen();
+        mWorkspace.incrementNumScreensToLeft();
         mWorkspace.setCurrentPage(mWorkspace.getCurrentPage() + 1);
     }
 
@@ -1162,7 +1162,8 @@
             return;
         }
 
-        LauncherModel.addItemToDatabase(this, info, container, screen, cellXY[0], cellXY[1], false);
+        int adjustedScreen = screen - getWorkspace().mNumPagesToLeft;
+        LauncherModel.addItemToDatabase(this, info, container, adjustedScreen, cellXY[0], cellXY[1], false);
 
         if (!mRestoring) {
             mWorkspace.addInScreen(view, container, screen, cellXY[0], cellXY[1], 1, 1,
@@ -1262,8 +1263,9 @@
         launcherInfo.minSpanX = mPendingAddInfo.minSpanX;
         launcherInfo.minSpanY = mPendingAddInfo.minSpanY;
 
+        int adjustedScreen = screen - getWorkspace().mNumPagesToLeft;
         LauncherModel.addItemToDatabase(this, launcherInfo,
-                container, screen, cellXY[0], cellXY[1], false);
+                container, adjustedScreen, cellXY[0], cellXY[1], false);
 
         if (!mRestoring) {
             if (hostView == null) {