Merge "Prevent crash when switching displays with screen off" into sc-v2-dev am: 0e79969bd4

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14807572

Change-Id: I8524262023279c5f669863ceed00f397f4c84775
This commit is contained in:
Alex Florescu
2021-06-04 01:36:47 +00:00
committed by Automerger Merge Worker

View File

@@ -1585,6 +1585,13 @@ public class NavigationBar implements View.OnAttachStateChangeListener,
private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// This receiver is unregistered when the view is detached, but on devices with multiple
// displays, it can sometimes still receive an ACTION_SCREEN_ON/ACTION_SCREEN_OFF on
// display switch, after it was detached, so this null check ensures no crash in that
// scenario.
if (mNavigationBarView == null) {
return;
}
String action = intent.getAction();
if (Intent.ACTION_SCREEN_OFF.equals(action)
|| Intent.ACTION_SCREEN_ON.equals(action)) {