summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java
diff options
context:
space:
mode:
authorDave Mankoff <mankoff@google.com>2020-09-23 14:01:33 +0000
committerDave Mankoff <mankoff@google.com>2020-09-24 11:04:51 -0400
commit3b7e026c067af221f040ceea6da97cb354dad2a3 (patch)
tree2f62d4fe7baf5cfdd02181d92dbb2722c139d0c0 /packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java
parentdc0193004485c8a2700ecd78fc2a907df6bd03ee (diff)
Revert^2 "8/N Remove View Injection from KeyguardMessageArea"
dd7312c20ad29c133a32ffd170919bec5f98f215 Change-Id: Idca486311380b48e1f0808c8d08cfce46c929473
Diffstat (limited to 'packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java')
-rw-r--r--packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java
index 78ac4e48501b..1618e8e58055 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageAreaController.java
@@ -19,6 +19,7 @@ package com.android.keyguard;
import android.content.res.ColorStateList;
import com.android.systemui.statusbar.policy.ConfigurationController;
+import com.android.systemui.statusbar.policy.ConfigurationController.ConfigurationListener;
import com.android.systemui.util.ViewController;
import javax.inject.Inject;
@@ -28,6 +29,35 @@ public class KeyguardMessageAreaController extends ViewController<KeyguardMessag
private final KeyguardUpdateMonitor mKeyguardUpdateMonitor;
private final ConfigurationController mConfigurationController;
+
+ private KeyguardUpdateMonitorCallback mInfoCallback = new KeyguardUpdateMonitorCallback() {
+ public void onFinishedGoingToSleep(int why) {
+ mView.setSelected(false);
+ }
+
+ public void onStartedWakingUp() {
+ mView.setSelected(true);
+ }
+
+ @Override
+ public void onKeyguardBouncerChanged(boolean bouncer) {
+ mView.setBouncerVisible(bouncer);
+ mView.update();
+ }
+ };
+
+ private ConfigurationListener mConfigurationListener = new ConfigurationListener() {
+ @Override
+ public void onThemeChanged() {
+ mView.onThemeChanged();
+ }
+
+ @Override
+ public void onDensityOrFontScaleChanged() {
+ mView.onDensityOrFontScaleChanged();
+ }
+ };
+
private KeyguardMessageAreaController(KeyguardMessageArea view,
KeyguardUpdateMonitor keyguardUpdateMonitor,
ConfigurationController configurationController) {
@@ -39,10 +69,16 @@ public class KeyguardMessageAreaController extends ViewController<KeyguardMessag
@Override
protected void onViewAttached() {
+ mConfigurationController.addCallback(mConfigurationListener);
+ mKeyguardUpdateMonitor.registerCallback(mInfoCallback);
+ mView.setSelected(mKeyguardUpdateMonitor.isDeviceInteractive());
+ mView.onThemeChanged();
}
@Override
protected void onViewDetached() {
+ mConfigurationController.removeCallback(mConfigurationListener);
+ mKeyguardUpdateMonitor.removeCallback(mInfoCallback);
}
public void setMessage(CharSequence s) {