diff options
Diffstat (limited to 'core/java/android/app/ActivityManager.java')
-rw-r--r-- | core/java/android/app/ActivityManager.java | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/core/java/android/app/ActivityManager.java b/core/java/android/app/ActivityManager.java index 9661b9e..4fe9cef 100644 --- a/core/java/android/app/ActivityManager.java +++ b/core/java/android/app/ActivityManager.java @@ -1442,10 +1442,9 @@ public class ActivityManager { public int getLauncherLargeIconDensity() { final Resources res = mContext.getResources(); final int density = res.getDisplayMetrics().densityDpi; - final int sw = res.getConfiguration().smallestScreenWidthDp; - if (sw < 600) { - // Smaller than approx 7" tablets, use the regular icon size. + if ((res.getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) + != Configuration.SCREENLAYOUT_SIZE_XLARGE) { return density; } @@ -1457,13 +1456,9 @@ public class ActivityManager { case DisplayMetrics.DENSITY_HIGH: return DisplayMetrics.DENSITY_XHIGH; case DisplayMetrics.DENSITY_XHIGH: - return DisplayMetrics.DENSITY_XXHIGH; - case DisplayMetrics.DENSITY_XXHIGH: - return DisplayMetrics.DENSITY_XHIGH * 2; + return DisplayMetrics.DENSITY_MEDIUM * 2; default: - // The density is some abnormal value. Return some other - // abnormal value that is a reasonable scaling of it. - return (int)(density*1.5f); + return density; } } @@ -1476,10 +1471,9 @@ public class ActivityManager { public int getLauncherLargeIconSize() { final Resources res = mContext.getResources(); final int size = res.getDimensionPixelSize(android.R.dimen.app_icon_size); - final int sw = res.getConfiguration().smallestScreenWidthDp; - if (sw < 600) { - // Smaller than approx 7" tablets, use the regular icon size. + if ((res.getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) + != Configuration.SCREENLAYOUT_SIZE_XLARGE) { return size; } @@ -1493,13 +1487,9 @@ public class ActivityManager { case DisplayMetrics.DENSITY_HIGH: return (size * DisplayMetrics.DENSITY_XHIGH) / DisplayMetrics.DENSITY_HIGH; case DisplayMetrics.DENSITY_XHIGH: - return (size * DisplayMetrics.DENSITY_XXHIGH) / DisplayMetrics.DENSITY_XHIGH; - case DisplayMetrics.DENSITY_XXHIGH: - return (size * DisplayMetrics.DENSITY_XHIGH*2) / DisplayMetrics.DENSITY_XXHIGH; + return (size * DisplayMetrics.DENSITY_MEDIUM * 2) / DisplayMetrics.DENSITY_XHIGH; default: - // The density is some abnormal value. Return some other - // abnormal value that is a reasonable scaling of it. - return (int)(size*1.5f); + return size; } } |