mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-28 07:46:55 +00:00
Removing dependency on XmlResourceParser in default layout parsing
This is allow support for generating and parsing default layout at runtime by a different app. Change-Id: Id3bfcf1d353417102429ab137402ccfedc4e6cc5
This commit is contained in:
@@ -10,7 +10,6 @@ import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.ResolveInfo;
|
||||
import android.content.res.Resources;
|
||||
import android.content.res.XmlResourceParser;
|
||||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArrayMap;
|
||||
@@ -76,7 +75,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void parseContainerAndScreen(XmlResourceParser parser, int[] out) {
|
||||
protected void parseContainerAndScreen(XmlPullParser parser, int[] out) {
|
||||
out[0] = LauncherSettings.Favorites.CONTAINER_DESKTOP;
|
||||
String strContainer = getAttributeValue(parser, ATTR_CONTAINER);
|
||||
if (strContainer != null) {
|
||||
@@ -91,7 +90,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
public class AppShortcutWithUriParser extends AppShortcutParser {
|
||||
|
||||
@Override
|
||||
protected int invalidPackageOrClass(XmlResourceParser parser) {
|
||||
protected int invalidPackageOrClass(XmlPullParser parser) {
|
||||
final String uri = getAttributeValue(parser, ATTR_URI);
|
||||
if (TextUtils.isEmpty(uri)) {
|
||||
Log.e(TAG, "Skipping invalid <favorite> with no component or uri");
|
||||
@@ -185,7 +184,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Intent parseIntent(XmlResourceParser parser) {
|
||||
protected Intent parseIntent(XmlPullParser parser) {
|
||||
String uri = null;
|
||||
try {
|
||||
uri = getAttributeValue(parser, ATTR_URI);
|
||||
@@ -205,7 +204,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
private final AppShortcutWithUriParser mChildParser = new AppShortcutWithUriParser();
|
||||
|
||||
@Override
|
||||
public int parseAndAdd(XmlResourceParser parser) throws XmlPullParserException,
|
||||
public int parseAndAdd(XmlPullParser parser) throws XmlPullParserException,
|
||||
IOException {
|
||||
final int groupDepth = parser.getDepth();
|
||||
int type;
|
||||
@@ -233,7 +232,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
@Thunk class PartnerFolderParser implements TagParser {
|
||||
|
||||
@Override
|
||||
public int parseAndAdd(XmlResourceParser parser) throws XmlPullParserException,
|
||||
public int parseAndAdd(XmlPullParser parser) throws XmlPullParserException,
|
||||
IOException {
|
||||
// Folder contents come from an external XML resource
|
||||
final Partner partner = Partner.get(mPackageManager);
|
||||
@@ -242,7 +241,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
final int resId = partnerRes.getIdentifier(Partner.RES_FOLDER,
|
||||
"xml", partner.getPackageName());
|
||||
if (resId != 0) {
|
||||
final XmlResourceParser partnerParser = partnerRes.getXml(resId);
|
||||
final XmlPullParser partnerParser = partnerRes.getXml(resId);
|
||||
beginDocument(partnerParser, TAG_FOLDER);
|
||||
|
||||
FolderParser folderParser = new FolderParser(getFolderElementsMap(partnerRes));
|
||||
@@ -259,7 +258,7 @@ public class DefaultLayoutParser extends AutoInstallsLayout {
|
||||
@Thunk class MyFolderParser extends FolderParser {
|
||||
|
||||
@Override
|
||||
public int parseAndAdd(XmlResourceParser parser) throws XmlPullParserException,
|
||||
public int parseAndAdd(XmlPullParser parser) throws XmlPullParserException,
|
||||
IOException {
|
||||
final int resId = getAttributeResourceValue(parser, ATTR_FOLDER_ITEMS, 0);
|
||||
if (resId != 0) {
|
||||
|
||||
Reference in New Issue
Block a user