Adding ability to list folder items in separate file

-> remove all apps default layouts

Bug 17569015

Change-Id: I39b899b61d5b1cff2d7801d281dacfc804c403c5
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java
index 7a0a8fa..0272dfd 100644
--- a/src/com/android/launcher3/LauncherProvider.java
+++ b/src/com/android/launcher3/LauncherProvider.java
@@ -360,11 +360,7 @@
     private static int getDefaultWorkspaceResourceId() {
         LauncherAppState app = LauncherAppState.getInstance();
         DeviceProfile grid = app.getDynamicGrid().getDeviceProfile();
-        if (LauncherAppState.isDisableAllApps()) {
-            return grid.defaultNoAllAppsLayoutId;
-        } else {
-            return grid.defaultLayoutId;
-        }
+        return grid.defaultLayoutId;
     }
 
     private static interface ContentValuesCallback {
@@ -399,6 +395,7 @@
         private static final String TAG_PARTNER_FOLDER = "partner-folder";
         private static final String TAG_EXTRA = "extra";
         private static final String TAG_INCLUDE = "include";
+        private static final String TAG_FOLDER_ITEMS = "folderitems";
 
         // Style attrs -- "Favorite"
         private static final String ATTR_CLASS_NAME = "className";
@@ -415,6 +412,7 @@
 
         // Style attrs -- "Include"
         private static final String ATTR_WORKSPACE = "workspace";
+        private static final String ATTR_FOLDER_ITEMS = "folderItems";
 
         // Style attrs -- "Extra"
         private static final String ATTR_KEY = "key";
@@ -1588,7 +1586,10 @@
                         folderItems.add(id);
                     }
                 } else if (TAG_INCLUDE.equals(tag) && folderId >= 0) {
-                    addToFolder(db, res, parser, folderItems, folderId);
+                    final int resId = getAttributeResourceValue(parser, ATTR_FOLDER_ITEMS, 0);
+                    XmlResourceParser itemsParser = res.getXml(resId);
+                    beginDocument(itemsParser, TAG_FOLDER_ITEMS);
+                    addToFolder(db, res, itemsParser, folderItems, folderId);
                 } else {
                     throw new RuntimeException("Folders can contain only shortcuts");
                 }