From ca21e7624d322bc25f763df8bcfa1f8d36ba9273 Mon Sep 17 00:00:00 2001 From: Alex Stetson Date: Mon, 10 Jan 2022 12:57:59 -0800 Subject: [PATCH] Allow keyguard_message_area_container to be null In certain applications, the keyguard_message_area_container view may not be present around a KeyguardMessageArea instance. Allowing the container to be nullable and adding the appropriate null checks will prevent exceptions under these circumstances. Bug: 213476245 Test: manual Change-Id: I65a4b6577c7b420ce6a55ae1d459989855c2e7a0 --- .../src/com/android/keyguard/KeyguardMessageArea.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java index 099dd5d82a100..75579b05aeeb9 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardMessageArea.java @@ -30,6 +30,8 @@ import android.view.View; import android.view.ViewGroup; import android.widget.TextView; +import androidx.annotation.Nullable; + import com.android.internal.policy.SystemBarUtils; import com.android.settingslib.Utils; import com.android.systemui.R; @@ -57,6 +59,11 @@ public class KeyguardMessageArea extends TextView implements SecurityMessageDisp private ColorStateList mNextMessageColorState = ColorStateList.valueOf(DEFAULT_COLOR); private boolean mBouncerVisible; private boolean mAltBouncerShowing; + /** + * Container that wraps the KeyguardMessageArea - may be null if current view hierarchy doesn't + * contain {@link R.id.keyguard_message_area_container}. + */ + @Nullable private ViewGroup mContainer; private int mTopMargin; @@ -75,6 +82,9 @@ public class KeyguardMessageArea extends TextView implements SecurityMessageDisp } void onConfigChanged() { + if (mContainer == null) { + return; + } final int newTopMargin = SystemBarUtils.getStatusBarHeight(getContext()); if (mTopMargin == newTopMargin) { return;