summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorAndrei-Valentin Onea <andreionea@google.com>2020-10-19 15:53:58 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-10-19 15:53:58 +0000
commit021aedcbf42358cca1d510c57d09367e2c9ef262 (patch)
treecefdd3544a638f33f8c5645624b3a3c9044099a9 /core/java
parent61e17b25ba8d3e98f911ddbe450ec652d56ed98e (diff)
parent6eb084ed325bd111fc82075f88f8e45e41f6ff70 (diff)
Merge "Add enabledSince support for compat changes" am: c90a797b8e am: 33edcd4dbc am: bcf00b61dd am: 6eb084ed32
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1450823 Change-Id: I597f9b8028c2af4d1e09a5e0d7db237e80fa3ca3
Diffstat (limited to 'core/java')
-rw-r--r--core/java/com/android/internal/compat/CompatibilityChangeInfo.java39
-rw-r--r--core/java/com/android/internal/compat/IPlatformCompat.aidl2
2 files changed, 29 insertions, 12 deletions
diff --git a/core/java/com/android/internal/compat/CompatibilityChangeInfo.java b/core/java/com/android/internal/compat/CompatibilityChangeInfo.java
index 9ba025988126..670ca9f6091e 100644
--- a/core/java/com/android/internal/compat/CompatibilityChangeInfo.java
+++ b/core/java/com/android/internal/compat/CompatibilityChangeInfo.java
@@ -28,7 +28,7 @@ import android.os.Parcelable;
public class CompatibilityChangeInfo implements Parcelable {
private final long mChangeId;
private final @Nullable String mName;
- private final int mEnableAfterTargetSdk;
+ private final int mEnableSinceTargetSdk;
private final boolean mDisabled;
private final boolean mLoggingOnly;
private final @Nullable String mDescription;
@@ -42,8 +42,8 @@ public class CompatibilityChangeInfo implements Parcelable {
return mName;
}
- public int getEnableAfterTargetSdk() {
- return mEnableAfterTargetSdk;
+ public int getEnableSinceTargetSdk() {
+ return mEnableSinceTargetSdk;
}
public boolean getDisabled() {
@@ -59,20 +59,37 @@ public class CompatibilityChangeInfo implements Parcelable {
}
public CompatibilityChangeInfo(
- Long changeId, String name, int enableAfterTargetSdk, boolean disabled,
- boolean loggingOnly, String description) {
+ Long changeId, String name, int enableAfterTargetSdk, int enableSinceTargetSdk,
+ boolean disabled, boolean loggingOnly, String description) {
this.mChangeId = changeId;
this.mName = name;
- this.mEnableAfterTargetSdk = enableAfterTargetSdk;
+ if (enableAfterTargetSdk > 0) {
+ // Need to maintain support for @EnabledAfter(X), but make it equivalent to
+ // @EnabledSince(X+1)
+ this.mEnableSinceTargetSdk = enableAfterTargetSdk + 1;
+ } else if (enableSinceTargetSdk > 0) {
+ this.mEnableSinceTargetSdk = enableSinceTargetSdk;
+ } else {
+ this.mEnableSinceTargetSdk = -1;
+ }
this.mDisabled = disabled;
this.mLoggingOnly = loggingOnly;
this.mDescription = description;
}
+ public CompatibilityChangeInfo(CompatibilityChangeInfo other) {
+ this.mChangeId = other.mChangeId;
+ this.mName = other.mName;
+ this.mEnableSinceTargetSdk = other.mEnableSinceTargetSdk;
+ this.mDisabled = other.mDisabled;
+ this.mLoggingOnly = other.mLoggingOnly;
+ this.mDescription = other.mDescription;
+ }
+
private CompatibilityChangeInfo(Parcel in) {
mChangeId = in.readLong();
mName = in.readString();
- mEnableAfterTargetSdk = in.readInt();
+ mEnableSinceTargetSdk = in.readInt();
mDisabled = in.readBoolean();
mLoggingOnly = in.readBoolean();
mDescription = in.readString();
@@ -87,7 +104,7 @@ public class CompatibilityChangeInfo implements Parcelable {
public void writeToParcel(Parcel dest, int flags) {
dest.writeLong(mChangeId);
dest.writeString(mName);
- dest.writeInt(mEnableAfterTargetSdk);
+ dest.writeInt(mEnableSinceTargetSdk);
dest.writeBoolean(mDisabled);
dest.writeBoolean(mLoggingOnly);
dest.writeString(mDescription);
@@ -100,8 +117,8 @@ public class CompatibilityChangeInfo implements Parcelable {
if (getName() != null) {
sb.append("; name=").append(getName());
}
- if (getEnableAfterTargetSdk() != -1) {
- sb.append("; enableAfterTargetSdk=").append(getEnableAfterTargetSdk());
+ if (getEnableSinceTargetSdk() != -1) {
+ sb.append("; enableSinceTargetSdk=").append(getEnableSinceTargetSdk());
}
if (getDisabled()) {
sb.append("; disabled");
@@ -123,7 +140,7 @@ public class CompatibilityChangeInfo implements Parcelable {
CompatibilityChangeInfo that = (CompatibilityChangeInfo) o;
return this.mChangeId == that.mChangeId
&& this.mName.equals(that.mName)
- && this.mEnableAfterTargetSdk == that.mEnableAfterTargetSdk
+ && this.mEnableSinceTargetSdk == that.mEnableSinceTargetSdk
&& this.mDisabled == that.mDisabled
&& this.mLoggingOnly == that.mLoggingOnly
&& this.mDescription.equals(that.mDescription);
diff --git a/core/java/com/android/internal/compat/IPlatformCompat.aidl b/core/java/com/android/internal/compat/IPlatformCompat.aidl
index 6408def7eeac..cc266d60465e 100644
--- a/core/java/com/android/internal/compat/IPlatformCompat.aidl
+++ b/core/java/com/android/internal/compat/IPlatformCompat.aidl
@@ -164,7 +164,7 @@ interface IPlatformCompat
boolean clearOverride(long changeId, String packageName);
/**
- * Enable all compatibility changes which have enabledAfterTargetSdk ==
+ * Enable all compatibility changes which have enabledSinceTargetSdk ==
* {@param targetSdkVersion} for an app, subject to the policy. Kills the app to allow the
* changes to take effect.
*