Fix NPE when calling PasswordViewEntry.getWindowInsetsController().hide()

As PasswordViewEntry didn't always attached to KeyguardPasswordView,
check if the view is attached in case NPE happen when getting null
WindowInsetsController

Fix: 192644416
Test: manual test as issue steps
Test: 1) make a security lock
      2) unlocked to go to launcher
      3) turn off screen
      4) check the log and make sure no crash log.
Change-Id: I13897f05576150b2f5e867c43d20efb02e681cef
This commit is contained in:
Ming-Shin Lu
2021-07-16 21:42:46 +08:00
parent 0077afd88a
commit 120ae3dbed

View File

@@ -228,12 +228,16 @@ public class KeyguardPasswordViewController
super.onPause();
});
}
mPasswordEntry.getWindowInsetsController().hide(WindowInsets.Type.ime());
if (mPasswordEntry.isAttachedToWindow()) {
mPasswordEntry.getWindowInsetsController().hide(WindowInsets.Type.ime());
}
}
@Override
public void onStartingToHide() {
mPasswordEntry.getWindowInsetsController().hide(WindowInsets.Type.ime());
if (mPasswordEntry.isAttachedToWindow()) {
mPasswordEntry.getWindowInsetsController().hide(WindowInsets.Type.ime());
}
}
private void updateSwitchImeButton() {