diff options
author | Dianne Hackborn <hackbod@google.com> | 2011-06-23 11:58:50 -0700 |
---|---|---|
committer | Dianne Hackborn <hackbod@google.com> | 2011-06-23 12:00:54 -0700 |
commit | 2b31d53161789358de57fd396716a6503855c5da (patch) | |
tree | 5c83f241eee1d124fa564457891465f2d8884a94 /core/java/android/util | |
parent | 0f5d8441ef3ee88855df71b15d81f4c14f12d63d (diff) | |
download | frameworks_base-2b31d53161789358de57fd396716a6503855c5da.zip frameworks_base-2b31d53161789358de57fd396716a6503855c5da.tar.gz frameworks_base-2b31d53161789358de57fd396716a6503855c5da.tar.bz2 |
Fix issue #4770360: older app compatibility mode is really tiny on ICS phones
We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.
Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
Diffstat (limited to 'core/java/android/util')
-rw-r--r-- | core/java/android/util/DisplayMetrics.java | 40 |
1 files changed, 34 insertions, 6 deletions
diff --git a/core/java/android/util/DisplayMetrics.java b/core/java/android/util/DisplayMetrics.java index d594567..519b980 100644 --- a/core/java/android/util/DisplayMetrics.java +++ b/core/java/android/util/DisplayMetrics.java @@ -119,13 +119,37 @@ public class DisplayMetrics { * being applied. * @hide */ - public int unscaledWidthPixels; + public int noncompatWidthPixels; /** * The reported display height prior to any compatibility mode scaling * being applied. * @hide */ - public int unscaledHeightPixels; + public int noncompatHeightPixels; + /** + * The reported display density prior to any compatibility mode scaling + * being applied. + * @hide + */ + public float noncompatDensity; + /** + * The reported scaled density prior to any compatibility mode scaling + * being applied. + * @hide + */ + public float noncompatScaledDensity; + /** + * The reported display xdpi prior to any compatibility mode scaling + * being applied. + * @hide + */ + public float noncompatXdpi; + /** + * The reported display ydpi prior to any compatibility mode scaling + * being applied. + * @hide + */ + public float noncompatYdpi; public DisplayMetrics() { } @@ -138,8 +162,12 @@ public class DisplayMetrics { scaledDensity = o.scaledDensity; xdpi = o.xdpi; ydpi = o.ydpi; - unscaledWidthPixels = o.unscaledWidthPixels; - unscaledHeightPixels = o.unscaledHeightPixels; + noncompatWidthPixels = o.noncompatWidthPixels; + noncompatHeightPixels = o.noncompatHeightPixels; + noncompatDensity = o.noncompatDensity; + noncompatScaledDensity = o.noncompatScaledDensity; + noncompatXdpi = o.noncompatXdpi; + noncompatYdpi = o.noncompatYdpi; } public void setToDefaults() { @@ -150,8 +178,8 @@ public class DisplayMetrics { scaledDensity = density; xdpi = DENSITY_DEVICE; ydpi = DENSITY_DEVICE; - unscaledWidthPixels = 0; - unscaledHeightPixels = 0; + noncompatWidthPixels = 0; + noncompatHeightPixels = 0; } @Override |