summaryrefslogtreecommitdiffstats
path: root/core/java/android/content/res
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2011-06-03 13:17:00 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-06-03 13:17:00 -0700
commit50469db07167e3a837e10f215baa4eacb1319604 (patch)
treec05a65fb42218589897b459cfcbac5b0fe411f49 /core/java/android/content/res
parent8c56154d9aa9573280d144cd361f9ef3f2435651 (diff)
parent7322e557cfe42da42779625d69ced2db74a9df90 (diff)
downloadframeworks_base-50469db07167e3a837e10f215baa4eacb1319604.zip
frameworks_base-50469db07167e3a837e10f215baa4eacb1319604.tar.gz
frameworks_base-50469db07167e3a837e10f215baa4eacb1319604.tar.bz2
am 7322e557: am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2
* commit '7322e557cfe42da42779625d69ced2db74a9df90': Fix issue #4502672: Wrong xml resources used for homescreen widgets.
Diffstat (limited to 'core/java/android/content/res')
-rw-r--r--core/java/android/content/res/CompatibilityInfo.java15
-rw-r--r--core/java/android/content/res/Configuration.java6
-rwxr-xr-xcore/java/android/content/res/Resources.java14
3 files changed, 19 insertions, 16 deletions
diff --git a/core/java/android/content/res/CompatibilityInfo.java b/core/java/android/content/res/CompatibilityInfo.java
index e42caca..b7b6de6 100644
--- a/core/java/android/content/res/CompatibilityInfo.java
+++ b/core/java/android/content/res/CompatibilityInfo.java
@@ -243,11 +243,11 @@ public class CompatibilityInfo implements Parcelable {
}
public boolean neverSupportsScreen() {
- return (mCompatibilityFlags&NEVER_NEEDS_COMPAT) != 0;
+ return (mCompatibilityFlags&ALWAYS_NEEDS_COMPAT) != 0;
}
public boolean alwaysSupportsScreen() {
- return (mCompatibilityFlags&ALWAYS_NEEDS_COMPAT) != 0;
+ return (mCompatibilityFlags&NEVER_NEEDS_COMPAT) != 0;
}
/**
@@ -406,7 +406,7 @@ public class CompatibilityInfo implements Parcelable {
if (!supportsScreen()) {
// This is a larger screen device and the app is not
// compatible with large screens, so diddle it.
- CompatibilityInfo.updateCompatibleScreenFrame(inoutDm, null, inoutDm);
+ CompatibilityInfo.computeCompatibleScaling(inoutDm, inoutDm);
} else {
inoutDm.widthPixels = inoutDm.unscaledWidthPixels;
inoutDm.heightPixels = inoutDm.unscaledHeightPixels;
@@ -443,8 +443,7 @@ public class CompatibilityInfo implements Parcelable {
* @param outRect the output parameter which will contain the result.
* @return Returns the scaling factor for the window.
*/
- public static float updateCompatibleScreenFrame(DisplayMetrics dm,
- Rect outRect, DisplayMetrics outDm) {
+ public static float computeCompatibleScaling(DisplayMetrics dm, DisplayMetrics outDm) {
final int width = dm.unscaledWidthPixels;
final int height = dm.unscaledHeightPixels;
int shortSize, longSize;
@@ -477,12 +476,6 @@ public class CompatibilityInfo implements Parcelable {
scale = 1;
}
- if (outRect != null) {
- final int left = (int)((width-(newWidth*scale))/2);
- final int top = (int)((height-(newHeight*scale))/2);
- outRect.set(left, top, left+newWidth, top+newHeight);
- }
-
if (outDm != null) {
outDm.widthPixels = newWidth;
outDm.heightPixels = newHeight;
diff --git a/core/java/android/content/res/Configuration.java b/core/java/android/content/res/Configuration.java
index d476997..6409aac 100644
--- a/core/java/android/content/res/Configuration.java
+++ b/core/java/android/content/res/Configuration.java
@@ -330,17 +330,17 @@ public final class Configuration implements Parcelable, Comparable<Configuration
if (smallestScreenWidthDp != SMALLEST_SCREEN_WIDTH_DP_UNDEFINED) {
sb.append(" sw"); sb.append(smallestScreenWidthDp); sb.append("dp");
} else {
- sb.append("?swdp");
+ sb.append(" ?swdp");
}
if (screenWidthDp != SCREEN_WIDTH_DP_UNDEFINED) {
sb.append(" w"); sb.append(screenWidthDp); sb.append("dp");
} else {
- sb.append("?wdp");
+ sb.append(" ?wdp");
}
if (screenHeightDp != SCREEN_HEIGHT_DP_UNDEFINED) {
sb.append(" h"); sb.append(screenHeightDp); sb.append("dp");
} else {
- sb.append("?hdp");
+ sb.append(" ?hdp");
}
switch ((screenLayout&SCREENLAYOUT_SIZE_MASK)) {
case SCREENLAYOUT_SIZE_UNDEFINED: sb.append(" ?lsize"); break;
diff --git a/core/java/android/content/res/Resources.java b/core/java/android/content/res/Resources.java
index 81dc46a..70bf524 100755
--- a/core/java/android/content/res/Resources.java
+++ b/core/java/android/content/res/Resources.java
@@ -28,14 +28,13 @@ import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable.ConstantState;
import android.os.Build;
import android.os.Bundle;
-import android.os.SystemProperties;
import android.util.AttributeSet;
import android.util.DisplayMetrics;
import android.util.Log;
+import android.util.Slog;
import android.util.SparseArray;
import android.util.TypedValue;
import android.util.LongSparseArray;
-import android.view.Display;
import java.io.IOException;
import java.io.InputStream;
@@ -1406,6 +1405,12 @@ public class Resources {
public void updateConfiguration(Configuration config,
DisplayMetrics metrics, CompatibilityInfo compat) {
synchronized (mTmpValue) {
+ if (false) {
+ Slog.i(TAG, "**** Updating config of " + this + ": old config is "
+ + mConfiguration + " old compat is " + mCompatibilityInfo);
+ Slog.i(TAG, "**** Updating config of " + this + ": new config is "
+ + config + " new compat is " + compat);
+ }
if (compat != null) {
mCompatibilityInfo = compat;
}
@@ -1471,6 +1476,11 @@ public class Resources {
mConfiguration.screenLayout, mConfiguration.uiMode,
Build.VERSION.RESOURCES_SDK_INT);
+ if (false) {
+ Slog.i(TAG, "**** Updating config of " + this + ": final config is " + mConfiguration
+ + " final compat is " + mCompatibilityInfo);
+ }
+
clearDrawableCache(mDrawableCache, configChanges);
clearDrawableCache(mColorDrawableCache, configChanges);