diff options
author | Dianne Hackborn <hackbod@google.com> | 2009-07-24 16:08:56 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2009-07-24 16:08:56 -0700 |
commit | e2dba02441b42afbae725109ac779877a4b72aa0 (patch) | |
tree | d9a81dc7e16f48b164c1507d135c2436a73b3954 /core/java/android/view | |
parent | 2470a7b4a82f9d1afc3c6b278aa313334f6412ab (diff) | |
parent | 11ea33471e1a14a8594f0b2cd012d86340dd3bd8 (diff) | |
download | frameworks_base-e2dba02441b42afbae725109ac779877a4b72aa0.zip frameworks_base-e2dba02441b42afbae725109ac779877a4b72aa0.tar.gz frameworks_base-e2dba02441b42afbae725109ac779877a4b72aa0.tar.bz2 |
am 11ea3347: Allow for screen density drawables in compatibility mode.
Merge commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8'
* commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8':
Allow for screen density drawables in compatibility mode.
Diffstat (limited to 'core/java/android/view')
-rw-r--r-- | core/java/android/view/Display.java | 1 | ||||
-rw-r--r-- | core/java/android/view/View.java | 2 | ||||
-rw-r--r-- | core/java/android/view/ViewRoot.java | 6 |
3 files changed, 6 insertions, 3 deletions
diff --git a/core/java/android/view/Display.java b/core/java/android/view/Display.java index 5551f64..b055d51 100644 --- a/core/java/android/view/Display.java +++ b/core/java/android/view/Display.java @@ -94,6 +94,7 @@ public class Display outMetrics.widthPixels = getWidth(); outMetrics.heightPixels = getHeight(); outMetrics.density = mDensity; + outMetrics.densityDpi = (int)((mDensity*DisplayMetrics.DENSITY_DEFAULT)+.5f); outMetrics.scaledDensity= outMetrics.density; outMetrics.xdpi = mDpiX; outMetrics.ydpi = mDpiY; diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index ff8868b..7ed2712 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -46,6 +46,7 @@ import android.os.SystemClock; import android.os.SystemProperties; import android.util.AttributeSet; import android.util.Config; +import android.util.DisplayMetrics; import android.util.EventLog; import android.util.Log; import android.util.Pool; @@ -5976,6 +5977,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility try { bitmap = Bitmap.createBitmap(width, height, quality); + bitmap.setDensity(getResources().getDisplayMetrics().densityDpi); if (autoScale) { mDrawingCache = new SoftReference<Bitmap>(bitmap); } else { diff --git a/core/java/android/view/ViewRoot.java b/core/java/android/view/ViewRoot.java index 0003eb7..cacf7a2 100644 --- a/core/java/android/view/ViewRoot.java +++ b/core/java/android/view/ViewRoot.java @@ -191,7 +191,7 @@ public final class ViewRoot extends Handler implements ViewParent, */ AudioManager mAudioManager; - private final float mDensity; + private final int mDensity; public ViewRoot(Context context) { super(); @@ -236,7 +236,7 @@ public final class ViewRoot extends Handler implements ViewParent, mAdded = false; mAttachInfo = new View.AttachInfo(sWindowSession, mWindow, this, this); mViewConfiguration = ViewConfiguration.get(context); - mDensity = context.getResources().getDisplayMetrics().density; + mDensity = context.getResources().getDisplayMetrics().densityDpi; } @Override @@ -1277,7 +1277,7 @@ public final class ViewRoot extends Handler implements ViewParent, } // TODO: Do this in native - canvas.setDensityScale(mDensity); + canvas.setDensity(mDensity); } catch (Surface.OutOfResourcesException e) { Log.e("ViewRoot", "OutOfResourcesException locking surface", e); // TODO: we should ask the window manager to do something! |