Loading core/java/com/android/internal/app/ChooserActivity.java +4 −4 Original line number Diff line number Diff line Loading @@ -647,7 +647,8 @@ public class ChooserActivity extends ResolverActivity { @Override public CharSequence getExtendedInfo() { return mSourceInfo != null ? mSourceInfo.getExtendedInfo() : null; // ChooserTargets have badge icons, so we won't show the extended info to disambiguate. return null; } @Override Loading Loading @@ -740,9 +741,8 @@ public class ChooserActivity extends ResolverActivity { @Override public boolean showsExtendedInfo(TargetInfo info) { // Reserve space to show extended info if any one of the items in the adapter has // extended info. This keeps grid item sizes uniform. return hasExtendedInfo(); // We have badges so we don't need this text shown. return false; } @Override Loading core/java/com/android/internal/app/ResolverActivity.java +22 −3 Original line number Diff line number Diff line Loading @@ -896,6 +896,7 @@ public class ResolverActivity extends Activity { private final ResolveInfo mResolveInfo; private final CharSequence mDisplayLabel; private Drawable mDisplayIcon; private Drawable mBadge; private final CharSequence mExtendedInfo; private final Intent mResolvedIntent; private final List<Intent> mSourceIntents = new ArrayList<>(); Loading Loading @@ -940,9 +941,27 @@ public class ResolverActivity extends Activity { } public Drawable getBadgeIcon() { // We only expose a badge if we have extended info. // The badge is a higher-priority disambiguation signal // but we don't need one if we wouldn't show extended info at all. if (TextUtils.isEmpty(getExtendedInfo())) { return null; } if (mBadge == null && mResolveInfo != null && mResolveInfo.activityInfo != null && mResolveInfo.activityInfo.applicationInfo != null) { if (mResolveInfo.activityInfo.icon == 0 || mResolveInfo.activityInfo.icon == mResolveInfo.activityInfo.applicationInfo.icon) { // Badging an icon with exactly the same icon is silly. // If the activityInfo icon resid is 0 it will fall back // to the application's icon, making it a match. return null; } mBadge = mResolveInfo.activityInfo.applicationInfo.loadIcon(mPm); } return mBadge; } @Override public CharSequence getBadgeContentDescription() { return null; Loading Loading @@ -1378,8 +1397,8 @@ public class ResolverActivity extends Activity { } else { mHasExtendedInfo = true; boolean usePkg = false; CharSequence startApp = ro.getResolveInfoAt(0).activityInfo.applicationInfo .loadLabel(mPm); final ApplicationInfo ai = ro.getResolveInfoAt(0).activityInfo.applicationInfo; final CharSequence startApp = ai.loadLabel(mPm); if (startApp == null) { usePkg = true; } Loading Loading
core/java/com/android/internal/app/ChooserActivity.java +4 −4 Original line number Diff line number Diff line Loading @@ -647,7 +647,8 @@ public class ChooserActivity extends ResolverActivity { @Override public CharSequence getExtendedInfo() { return mSourceInfo != null ? mSourceInfo.getExtendedInfo() : null; // ChooserTargets have badge icons, so we won't show the extended info to disambiguate. return null; } @Override Loading Loading @@ -740,9 +741,8 @@ public class ChooserActivity extends ResolverActivity { @Override public boolean showsExtendedInfo(TargetInfo info) { // Reserve space to show extended info if any one of the items in the adapter has // extended info. This keeps grid item sizes uniform. return hasExtendedInfo(); // We have badges so we don't need this text shown. return false; } @Override Loading
core/java/com/android/internal/app/ResolverActivity.java +22 −3 Original line number Diff line number Diff line Loading @@ -896,6 +896,7 @@ public class ResolverActivity extends Activity { private final ResolveInfo mResolveInfo; private final CharSequence mDisplayLabel; private Drawable mDisplayIcon; private Drawable mBadge; private final CharSequence mExtendedInfo; private final Intent mResolvedIntent; private final List<Intent> mSourceIntents = new ArrayList<>(); Loading Loading @@ -940,9 +941,27 @@ public class ResolverActivity extends Activity { } public Drawable getBadgeIcon() { // We only expose a badge if we have extended info. // The badge is a higher-priority disambiguation signal // but we don't need one if we wouldn't show extended info at all. if (TextUtils.isEmpty(getExtendedInfo())) { return null; } if (mBadge == null && mResolveInfo != null && mResolveInfo.activityInfo != null && mResolveInfo.activityInfo.applicationInfo != null) { if (mResolveInfo.activityInfo.icon == 0 || mResolveInfo.activityInfo.icon == mResolveInfo.activityInfo.applicationInfo.icon) { // Badging an icon with exactly the same icon is silly. // If the activityInfo icon resid is 0 it will fall back // to the application's icon, making it a match. return null; } mBadge = mResolveInfo.activityInfo.applicationInfo.loadIcon(mPm); } return mBadge; } @Override public CharSequence getBadgeContentDescription() { return null; Loading Loading @@ -1378,8 +1397,8 @@ public class ResolverActivity extends Activity { } else { mHasExtendedInfo = true; boolean usePkg = false; CharSequence startApp = ro.getResolveInfoAt(0).activityInfo.applicationInfo .loadLabel(mPm); final ApplicationInfo ai = ro.getResolveInfoAt(0).activityInfo.applicationInfo; final CharSequence startApp = ai.loadLabel(mPm); if (startApp == null) { usePkg = true; } Loading