diff options
| author | 2021-01-19 17:07:11 +0100 | |
|---|---|---|
| committer | 2021-01-19 17:07:11 +0100 | |
| commit | 36ba33e66ab4e8b04ab70f2f2372975a13c786bc (patch) | |
| tree | ec45459f8049d708c1c8db8666c7ac7da265c07a | |
| parent | 0d765236869c4d16e3de78ec6867ecec825e5377 (diff) | |
Add blur feature to package manager
Bug: 177523043
Bug: 177524486
Test: adb shell pm list features
Change-Id: Ibda2d51e6517753148609f5ae2e1a7e077b89b1e
| -rw-r--r-- | core/api/system-current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/content/pm/PackageManager.java | 11 | ||||
| -rw-r--r-- | core/java/com/android/server/SystemConfig.java | 7 |
3 files changed, 19 insertions, 0 deletions
diff --git a/core/api/system-current.txt b/core/api/system-current.txt index eab4d649eecd..8a5fc7cd96e9 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -2337,6 +2337,7 @@ package android.content.pm { field public static final String EXTRA_REQUEST_PERMISSIONS_RESULTS = "android.content.pm.extra.REQUEST_PERMISSIONS_RESULTS"; field public static final String FEATURE_BROADCAST_RADIO = "android.hardware.broadcastradio"; field public static final String FEATURE_CONTEXT_HUB = "android.hardware.context_hub"; + field public static final String FEATURE_CROSS_LAYER_BLUR = "android.software.cross_layer_blur"; field public static final String FEATURE_INCREMENTAL_DELIVERY = "android.software.incremental_delivery"; field public static final String FEATURE_REBOOT_ESCROW = "android.hardware.reboot_escrow"; field public static final String FEATURE_TELEPHONY_CARRIERLOCK = "android.hardware.telephony.carrierlock"; diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 03d4d5e10e64..747f8dc4915c 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -3532,6 +3532,17 @@ public abstract class PackageManager { @SdkConstant(SdkConstantType.FEATURE) public static final String FEATURE_APP_ENUMERATION = "android.software.app_enumeration"; + /** + * Feature for {@link android.view.WindowManager.LayoutParams.backgroundBlurRedius} and + * {@link android.graphics.drawable.BackgroundBlurDrawable}: the device supports cross-layer + * blurring. + * + * @hide + */ + @SystemApi + @SdkConstant(SdkConstantType.FEATURE) + public static final String FEATURE_CROSS_LAYER_BLUR = "android.software.cross_layer_blur"; + /** @hide */ public static final boolean APP_ENUMERATION_ENABLED_BY_DEFAULT = true; diff --git a/core/java/com/android/server/SystemConfig.java b/core/java/com/android/server/SystemConfig.java index a761b4c6af91..e5bc47097751 100644 --- a/core/java/com/android/server/SystemConfig.java +++ b/core/java/com/android/server/SystemConfig.java @@ -94,6 +94,9 @@ public class SystemConfig { // property for runtime configuration differentiation in vendor private static final String VENDOR_SKU_PROPERTY = "ro.boot.product.vendor.sku"; + // property for background blur support in surface flinger + private static final String BLUR_PROPERTY = "ro.surface_flinger.supports_background_blur"; + // Group-ids that are given to all packages as read from etc/permissions/*.xml. int[] mGlobalGids = EmptyArray.INT; @@ -1242,6 +1245,10 @@ public class SystemConfig { addFeature(PackageManager.FEATURE_IPSEC_TUNNELS, 0); } + if (SystemProperties.get(BLUR_PROPERTY, "default").equals("1")) { + addFeature(PackageManager.FEATURE_CROSS_LAYER_BLUR, 0); + } + for (String featureName : mUnavailableFeatures) { removeFeature(featureName); } |