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

Commit b559b371 authored by Tim Kilbourn's avatar Tim Kilbourn Committed by Android (Google) Code Review
Browse files

Merge "Dump leanback info in aapt dump badging." into klp-modular-dev

parents 74bebf6f 0a5a5d69
Loading
Loading
Loading
Loading
+32 −8
Original line number Diff line number Diff line
@@ -375,6 +375,7 @@ enum {
    LARGEST_WIDTH_LIMIT_DP_ATTR = 0x01010366,
    PUBLIC_KEY_ATTR = 0x010103a6,
    CATEGORY_ATTR = 0x010103e8,
    BANNER_ATTR = 0x10103f2,
};

const char *getComponentName(String8 &pkgName, String8 &componentName) {
@@ -677,6 +678,7 @@ int doDump(Bundle* bundle)
            bool withinActivity = false;
            bool isMainActivity = false;
            bool isLauncherActivity = false;
            bool isLeanbackLauncherActivity = false;
            bool isSearchable = false;
            bool withinApplication = false;
            bool withinSupportsInput = false;
@@ -787,6 +789,7 @@ int doDump(Bundle* bundle)
            String8 activityName;
            String8 activityLabel;
            String8 activityIcon;
            String8 activityBanner;
            String8 receiverName;
            String8 serviceName;
            Vector<String8> supportedInput;
@@ -810,8 +813,9 @@ int doDump(Bundle* bundle)
                        withinApplication = false;
                        withinSupportsInput = false;
                    } else if (depth < 3) {
                        if (withinActivity && isMainActivity && isLauncherActivity) {
                        if (withinActivity && isMainActivity) {
                            const char *aName = getComponentName(pkg, activityName);
                            if (isLauncherActivity) {
                                printf("launchable-activity:");
                                if (aName != NULL) {
                                    printf(" name='%s' ", aName);
@@ -820,6 +824,17 @@ int doDump(Bundle* bundle)
                                        activityLabel.string(),
                                        activityIcon.string());
                            }
                            if (isLeanbackLauncherActivity) {
                                printf("leanback-launchable-activity:");
                                if (aName != NULL) {
                                    printf(" name='%s' ", aName);
                                }
                                printf(" label='%s' icon='%s' banner='%s'\n",
                                        activityLabel.string(),
                                        activityIcon.string(),
                                        activityBanner.string());
                            }
                        }
                        if (!hasIntentFilter) {
                            hasOtherActivities |= withinActivity;
                            hasOtherReceivers |= withinReceiver;
@@ -836,7 +851,7 @@ int doDump(Bundle* bundle)
                        withinService = false;
                        withinReceiver = false;
                        hasIntentFilter = false;
                        isMainActivity = isLauncherActivity = false;
                        isMainActivity = isLauncherActivity = isLeanbackLauncherActivity = false;
                    } else if (depth < 4) {
                        if (withinIntentFilter) {
                            if (withinActivity) {
@@ -1231,6 +1246,13 @@ int doDump(Bundle* bundle)
                                goto bail;
                            }

                            activityBanner = getResolvedAttribute(&res, tree, BANNER_ATTR, &error);
                            if (error != "") {
                                fprintf(stderr, "ERROR getting 'android:banner' attribute: %s\n",
                                        error.string());
                                goto bail;
                            }

                            int32_t orien = getResolvedIntegerAttribute(&res, tree,
                                    SCREEN_ORIENTATION_ATTR, &error);
                            if (error == "") {
@@ -1412,6 +1434,8 @@ int doDump(Bundle* bundle)
                        if (withinActivity) {
                            if (category == "android.intent.category.LAUNCHER") {
                                isLauncherActivity = true;
                            } else if (category == "android.intent.category.LEANBACK_LAUNCHER") {
                                isLeanbackLauncherActivity = true;
                            }
                        }
                    }