diff options
| author | Andrei-Valentin Onea <andreionea@google.com> | 2020-10-19 15:53:58 +0000 |
|---|---|---|
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-10-19 15:53:58 +0000 |
| commit | 021aedcbf42358cca1d510c57d09367e2c9ef262 (patch) | |
| tree | cefdd3544a638f33f8c5645624b3a3c9044099a9 /core/java | |
| parent | 61e17b25ba8d3e98f911ddbe450ec652d56ed98e (diff) | |
| parent | 6eb084ed325bd111fc82075f88f8e45e41f6ff70 (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.java | 39 | ||||
| -rw-r--r-- | core/java/com/android/internal/compat/IPlatformCompat.aidl | 2 |
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. * |
