From 12dab90cc9891577a5db9fe89ef0fa996e3456cf Mon Sep 17 00:00:00 2001 From: Lucas Dupin Date: Fri, 19 Apr 2019 11:10:48 -0700 Subject: [PATCH] Update theme after registering config listener Theme might not be set yet during inflation and we might miss the event if wait for the view to be added to the window, leading to theme being out of sync. Test: adb shell am crash com.android.systemui Fixes: 130879865 Change-Id: Icd533457732b46b96aeacf9be0c32c02e6b33360 --- .../src/com/android/keyguard/KeyguardMessageArea.java | 5 ++--- .../src/com/android/systemui/statusbar/phone/LockIcon.java | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java index ace6f6fe904d3..814fec34b4dcb 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java @@ -87,15 +87,14 @@ public class KeyguardMessageArea extends TextView implements SecurityMessageDisp monitor.registerCallback(mInfoCallback); mHandler = new Handler(Looper.myLooper()); mConfigurationController = configurationController; - onThemeChanged(); - update(); } @Override protected void onAttachedToWindow() { super.onAttachedToWindow(); mConfigurationController.addCallback(this); + onThemeChanged(); } @Override @@ -116,8 +115,8 @@ public class KeyguardMessageArea extends TextView implements SecurityMessageDisp }); ColorStateList newTextColors = ColorStateList.valueOf(array.getColor(0, Color.RED)); array.recycle(); - setTextColor(newTextColors); mDefaultColorState = newTextColors; + update(); } @Override diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java index 971e5b3115d67..6121ae603d698 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/LockIcon.java @@ -123,7 +123,6 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange mAccessibilityController = accessibilityController; mConfigurationController = configurationController; mStatusBarStateController = statusBarStateController; - onThemeChanged(); } @Override @@ -133,6 +132,7 @@ public class LockIcon extends KeyguardAffordanceView implements OnUserInfoChange mConfigurationController.addCallback(this); mKeyguardUpdateMonitor.registerCallback(mUpdateMonitorCallback); mUnlockMethodCache.addListener(this); + onThemeChanged(); } @Override