diff options
| author | 2023-01-13 18:34:31 +0000 | |
|---|---|---|
| committer | 2023-01-13 18:34:31 +0000 | |
| commit | 075cbffdea41cb52777e5d9d3711c94959f30fec (patch) | |
| tree | 402b0bc0b1b762ef79b3a39e395de1e8646ee6b9 | |
| parent | c0d5386fb1d26bd8b71494694adc18a0d47a7e79 (diff) | |
| parent | 5f12d744d4005a731a8bdc5b2b463bb90b5e0a19 (diff) | |
Merge "Ensure weakly referenced Kotlin callback fields are kept" into tm-qpr-dev am: 5f12d744d4
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20953438
Change-Id: Ie7762fa243fcc492ab8dd2b513f95a8208b798be
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | packages/SystemUI/proguard.flags | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/SystemUI/proguard.flags b/packages/SystemUI/proguard.flags index 030eaa660c9f..5fc919330e92 100644 --- a/packages/SystemUI/proguard.flags +++ b/packages/SystemUI/proguard.flags @@ -21,12 +21,44 @@ # TODO(b/264686688): Handle these cases with more targeted annotations. -keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { private com.android.keyguard.KeyguardUpdateMonitorCallback *; + private com.android.systemui.privacy.PrivacyConfig$Callback *; private com.android.systemui.privacy.PrivacyItemController$Callback *; private com.android.systemui.settings.UserTracker$Callback *; private com.android.systemui.statusbar.phone.StatusBarWindowCallback *; private com.android.systemui.util.service.Observer$Callback *; private com.android.systemui.util.service.ObservableServiceConnection$Callback *; } +# Note that these rules are temporary companions to the above rules, required +# for cases like Kotlin where fields with anonymous types use the anonymous type +# rather than the supertype. +-if class * extends com.android.keyguard.KeyguardUpdateMonitorCallback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.privacy.PrivacyConfig$Callback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.privacy.PrivacyItemController$Callback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.settings.UserTracker$Callback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.statusbar.phone.StatusBarWindowCallback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.util.service.Observer$Callback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} +-if class * extends com.android.systemui.util.service.ObservableServiceConnection$Callback +-keepclassmembers,allowaccessmodification class com.android.systemui.**, com.android.keyguard.** { + <1> *; +} -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet); |