diff options
-rw-r--r-- | src/com/android/launcher3/AutoInstallsLayout.java | 15 | ||||
-rw-r--r-- | src/com/android/launcher3/DefaultLayoutParser.java | 22 |
2 files changed, 15 insertions, 22 deletions
diff --git a/src/com/android/launcher3/AutoInstallsLayout.java b/src/com/android/launcher3/AutoInstallsLayout.java index 0fa4cbb75..908bd3d79 100644 --- a/src/com/android/launcher3/AutoInstallsLayout.java +++ b/src/com/android/launcher3/AutoInstallsLayout.java @@ -78,6 +78,7 @@ public class AutoInstallsLayout { } // Object Tags + private static final String TAG_INCLUDE = "include"; private static final String TAG_WORKSPACE = "workspace"; private static final String TAG_APP_ICON = "appicon"; private static final String TAG_AUTO_INSTALL = "autoinstall"; @@ -100,6 +101,9 @@ public class AutoInstallsLayout { private static final String ATTR_ICON = "icon"; private static final String ATTR_URL = "url"; + // Attrs for "Include" + private static final String ATTR_WORKSPACE = "workspace"; + // Style attrs -- "Extra" private static final String ATTR_KEY = "key"; private static final String ATTR_VALUE = "value"; @@ -208,6 +212,17 @@ public class AutoInstallsLayout { HashMap<String, TagParser> tagParserMap, ArrayList<Long> screenIds) throws XmlPullParserException, IOException { + + if (TAG_INCLUDE.equals(parser.getName())) { + final int resId = getAttributeResourceValue(parser, ATTR_WORKSPACE, 0); + if (resId != 0) { + // recursively load some more favorites, why not? + return parseLayout(resId, screenIds); + } else { + return 0; + } + } + mValues.clear(); parseContainerAndScreen(parser, mTemp); final long container = mTemp[0]; diff --git a/src/com/android/launcher3/DefaultLayoutParser.java b/src/com/android/launcher3/DefaultLayoutParser.java index 48372388a..6c3008b6e 100644 --- a/src/com/android/launcher3/DefaultLayoutParser.java +++ b/src/com/android/launcher3/DefaultLayoutParser.java @@ -19,7 +19,6 @@ import org.xmlpull.v1.XmlPullParserException; import java.io.IOException; import java.net.URISyntaxException; -import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -36,10 +35,8 @@ public class DefaultLayoutParser extends AutoInstallsLayout { private static final String TAG_SHORTCUT = "shortcut"; private static final String TAG_FOLDER = "folder"; private static final String TAG_PARTNER_FOLDER = "partner-folder"; - private static final String TAG_INCLUDE = "include"; protected static final String ATTR_URI = "uri"; - private static final String ATTR_WORKSPACE = "workspace"; private static final String ATTR_CONTAINER = "container"; private static final String ATTR_SCREEN = "screen"; private static final String ATTR_FOLDER_ITEMS = "folderItems"; @@ -89,25 +86,6 @@ public class DefaultLayoutParser extends AutoInstallsLayout { out[1] = Long.parseLong(getAttributeValue(parser, ATTR_SCREEN)); } - @Override - protected int parseAndAddNode( - XmlResourceParser parser, - HashMap<String, TagParser> tagParserMap, - ArrayList<Long> screenIds) - throws XmlPullParserException, IOException { - if (TAG_INCLUDE.equals(parser.getName())) { - final int resId = getAttributeResourceValue(parser, ATTR_WORKSPACE, 0); - if (resId != 0) { - // recursively load some more favorites, why not? - return parseLayout(resId, screenIds); - } else { - return 0; - } - } else { - return super.parseAndAddNode(parser, tagParserMap, screenIds); - } - } - /** * AppShortcutParser which also supports adding URI based intents */ |