Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c32d677 authored by The Android Open Source Project's avatar The Android Open Source Project
Browse files

Merge commit 'remotes/goog/donut' into donut-release

parents 2ee5ac71 8b9baf2d
Loading
Loading
Loading
Loading
+252 −0
Original line number Diff line number Diff line
@@ -48942,6 +48942,17 @@
 visibility="public"
>
</method>
<method name="getDensityScale"
 return="float"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getHeight"
 return="int"
 abstract="false"
@@ -49015,6 +49026,58 @@
 visibility="public"
>
</method>
<method name="getScaledHeight"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="canvas" type="android.graphics.Canvas">
</parameter>
</method>
<method name="getScaledHeight"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="metrics" type="android.util.DisplayMetrics">
</parameter>
</method>
<method name="getScaledWidth"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="canvas" type="android.graphics.Canvas">
</parameter>
</method>
<method name="getScaledWidth"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="metrics" type="android.util.DisplayMetrics">
</parameter>
</method>
<method name="getWidth"
 return="int"
 abstract="false"
@@ -49037,6 +49100,17 @@
 visibility="public"
>
</method>
<method name="isAutoScalingEnabled"
 return="boolean"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="isMutable"
 return="boolean"
 abstract="false"
@@ -49081,6 +49155,32 @@
 visibility="public"
>
</method>
<method name="setAutoScalingEnabled"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="autoScalingEnabled" type="boolean">
</parameter>
</method>
<method name="setDensityScale"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="densityScale" type="float">
</parameter>
</method>
<method name="setPixel"
 return="void"
 abstract="false"
@@ -49148,6 +49248,17 @@
 visibility="public"
>
</field>
<field name="DENSITY_SCALE_UNKNOWN"
 type="float"
 transient="false"
 volatile="false"
 value="-1.0f"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
</class>
<class name="Bitmap.CompressFormat"
 extends="java.lang.Enum"
@@ -49367,6 +49478,27 @@
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="res" type="android.content.res.Resources">
</parameter>
<parameter name="value" type="android.util.TypedValue">
</parameter>
<parameter name="is" type="java.io.InputStream">
</parameter>
<parameter name="pad" type="android.graphics.Rect">
</parameter>
<parameter name="opts" type="android.graphics.BitmapFactory.Options">
</parameter>
</method>
<method name="decodeStream"
 return="android.graphics.Bitmap"
 abstract="false"
 native="false"
 synchronized="false"
 static="true"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="is" type="java.io.InputStream">
</parameter>
<parameter name="outPadding" type="android.graphics.Rect">
@@ -49415,6 +49547,16 @@
 visibility="public"
>
</method>
<field name="inDensity"
 type="int"
 transient="false"
 volatile="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="inDither"
 type="boolean"
 transient="false"
@@ -49475,6 +49617,16 @@
 visibility="public"
>
</field>
<field name="inScaled"
 type="boolean"
 transient="false"
 volatile="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="inTempStorage"
 type="byte[]"
 transient="false"
@@ -50729,6 +50881,17 @@
 visibility="public"
>
</method>
<method name="getDensityScale"
 return="float"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getDrawFilter"
 return="android.graphics.DrawFilter"
 abstract="false"
@@ -51075,6 +51238,19 @@
<parameter name="bitmap" type="android.graphics.Bitmap">
</parameter>
</method>
<method name="setDensityScale"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="densityScale" type="float">
</parameter>
</method>
<method name="setDrawFilter"
 return="void"
 abstract="false"
@@ -132969,6 +133145,50 @@
 visibility="public"
>
</method>
<field name="DENSITY_DEFAULT"
 type="int"
 transient="false"
 volatile="false"
 value="160"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="DENSITY_HIGH"
 type="int"
 transient="false"
 volatile="false"
 value="240"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="DENSITY_LOW"
 type="int"
 transient="false"
 volatile="false"
 value="120"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="DENSITY_MEDIUM"
 type="int"
 transient="false"
 volatile="false"
 value="160"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="density"
 type="float"
 transient="false"
@@ -135018,6 +135238,28 @@
 visibility="public"
>
</field>
<field name="DENSITY_DEFAULT"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="DENSITY_NONE"
 type="int"
 transient="false"
 volatile="false"
 value="65535"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="TYPE_ATTRIBUTE"
 type="int"
 transient="false"
@@ -135246,6 +135488,16 @@
 visibility="public"
>
</field>
<field name="density"
 type="int"
 transient="false"
 volatile="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="resourceId"
 type="int"
 transient="false"
+0 −1
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ import android.content.pm.InstrumentationInfo;
import android.content.pm.PackageManager;
import android.content.pm.ProviderInfo;
import android.content.pm.ServiceInfo;
import android.content.pm.PackageParser.Component;
import android.content.res.AssetManager;
import android.content.res.CompatibilityInfo;
import android.content.res.Configuration;
+1 −1
Original line number Diff line number Diff line
@@ -979,12 +979,12 @@ public class PackageParser {
        /**
         * TODO: enable this before code freeze. b/1967935
         * *
         */
        if ((densities == null || densities.length == 0)
                && (pkg.applicationInfo.targetSdkVersion
                        >= android.os.Build.VERSION_CODES.CUR_DEVELOPMENT)) {
            pkg.supportsDensities = ApplicationInfo.ANY_DENSITIES_ARRAY;
        }
         */

        return pkg;
    }
+21 −8
Original line number Diff line number Diff line
@@ -84,6 +84,11 @@ public class CompatibilityInfo {

    private static final int SCALING_EXPANDABLE_MASK = SCALING_REQUIRED | EXPANDABLE;

    /**
     * The effective screen density we have selected for this application.
     */
    public final int applicationDensity;
    
    /**
     * Application's scale.
     */
@@ -107,30 +112,36 @@ public class CompatibilityInfo {
        }
        
        float packageDensityScale = -1.0f;
        int packageDensity = 0;
        if (appInfo.supportsDensities != null) {
            int minDiff = Integer.MAX_VALUE;
            for (int density : appInfo.supportsDensities) {
                if (density == ApplicationInfo.ANY_DENSITY) {
                    packageDensity = DisplayMetrics.DENSITY_DEVICE;
                    packageDensityScale = 1.0f;
                    break;
                }
                int tmpDiff = Math.abs(DisplayMetrics.DEVICE_DENSITY - density);
                int tmpDiff = Math.abs(DisplayMetrics.DENSITY_DEVICE - density);
                if (tmpDiff == 0) {
                    packageDensity = DisplayMetrics.DENSITY_DEVICE;
                    packageDensityScale = 1.0f;
                    break;
                }
                // prefer higher density (appScale>1.0), unless that's only option.
                if (tmpDiff < minDiff && packageDensityScale < 1.0f) {
                    packageDensityScale = DisplayMetrics.DEVICE_DENSITY / (float) density;
                    packageDensity = density;
                    packageDensityScale = DisplayMetrics.DENSITY_DEVICE / (float) density;
                    minDiff = tmpDiff;
                }
            }
        }
        if (packageDensityScale > 0.0f) {
            applicationDensity = packageDensity;
            applicationScale = packageDensityScale;
        } else {
            applicationDensity = DisplayMetrics.DENSITY_DEFAULT;
            applicationScale =
                    DisplayMetrics.DEVICE_DENSITY / (float) DisplayMetrics.DEFAULT_DENSITY;
                    DisplayMetrics.DENSITY_DEVICE / (float) DisplayMetrics.DENSITY_DEFAULT;
        }

        applicationInvertedScale = 1.0f / applicationScale;
@@ -139,9 +150,11 @@ public class CompatibilityInfo {
        }
    }

    private CompatibilityInfo(int appFlags, int compFlags, float scale, float invertedScale) {
    private CompatibilityInfo(int appFlags, int compFlags,
            int dens, float scale, float invertedScale) {
        this.appFlags = appFlags;
        mCompatibilityFlags = compFlags;
        applicationDensity = dens;
        applicationScale = scale;
        applicationInvertedScale = invertedScale;
    }
@@ -151,6 +164,7 @@ public class CompatibilityInfo {
                | ApplicationInfo.FLAG_SUPPORTS_NORMAL_SCREENS
                | ApplicationInfo.FLAG_SUPPORTS_LARGE_SCREENS,
                EXPANDABLE | CONFIGURED_EXPANDABLE,
                DisplayMetrics.DENSITY_DEVICE,
                1.0f,
                1.0f);
    }
@@ -160,7 +174,7 @@ public class CompatibilityInfo {
     */
    public CompatibilityInfo copy() {
        CompatibilityInfo info = new CompatibilityInfo(appFlags, mCompatibilityFlags,
                applicationScale, applicationInvertedScale);
                applicationDensity, applicationScale, applicationInvertedScale);
        return info;
    }
 
@@ -210,8 +224,7 @@ public class CompatibilityInfo {
            if (DBG) Log.d(TAG, "no translation required");
            return null;
        }
        if (!isScalingRequired() ||
            (params.flags & WindowManager.LayoutParams.FLAG_NO_COMPATIBILITY_SCALING) != 0) {
        if (!isScalingRequired()) {
            return null;
        }
        return new Translator();
+10 −1
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ public class Resources {
    /*package*/ final DisplayMetrics mMetrics = new DisplayMetrics();
    PluralRules mPluralRule;
    
    private final CompatibilityInfo mCompatibilityInfo;
    private CompatibilityInfo mCompatibilityInfo;
    private Display mDefaultDisplay;

    private static final LongSparseArray<Object> EMPTY_ARRAY = new LongSparseArray<Object>() {
@@ -1385,6 +1385,15 @@ public class Resources {
        return mCompatibilityInfo;
    }

    /**
     * This is just for testing.
     * @hide
     */
    public void setCompatibilityInfo(CompatibilityInfo ci) {
        mCompatibilityInfo = ci;
        updateConfiguration(mConfiguration, mMetrics);
    }
    
    /**
     * Return a resource identifier for the given resource name.  A fully
     * qualified resource name is of the form "package:type/entry".  The first
Loading