From 1faff19f47320121e3d751ba7722b9507b265be0 Mon Sep 17 00:00:00 2001 From: Winson Chung Date: Thu, 20 Aug 2020 10:39:25 -0700 Subject: [PATCH] Temporarily disable recents onboarding - Add null check for biometric unlock Bug: 165014649 Test: atest MultiDisplayKeyguardTests Change-Id: Ie527991d57d9938e1bc99c46737571c551aa2132 --- .../navigationbar/NavigationBarView.java | 33 +++++++++++++------ .../locksettings/BiometricDeferredQueue.java | 4 +++ 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java index a3351838ecf26..7b5b97775cee9 100644 --- a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java +++ b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarView.java @@ -329,8 +329,9 @@ public class NavigationBarView extends FrameLayout implements mContextualButtonGroup.addButton(accessibilityButton); mOverviewProxyService = Dependency.get(OverviewProxyService.class); - mRecentsOnboarding = new RecentsOnboarding(context, mOverviewProxyService); mFloatingRotationButton = new FloatingRotationButton(context); + // TODO(165014649): Temporarily disable onboarding + // mRecentsOnboarding = new RecentsOnboarding(context, mOverviewProxyService); mRotationButtonController = new RotationButtonController(mLightContext, mLightIconColor, mDarkIconColor, isGesturalMode ? mFloatingRotationButton : rotateSuggestionButton, @@ -886,7 +887,9 @@ public class NavigationBarView extends FrameLayout implements mNavBarMode = mode; mBarTransitions.onNavigationModeChanged(mNavBarMode); mEdgeBackGestureHandler.onNavigationModeChanged(mNavBarMode); - mRecentsOnboarding.onNavigationModeChanged(mNavBarMode); + if (mRecentsOnboarding != null) { + mRecentsOnboarding.onNavigationModeChanged(mNavBarMode); + } if (isGesturalMode(mNavBarMode)) { mRegionSamplingHelper.start(mSamplingBounds); @@ -902,7 +905,9 @@ public class NavigationBarView extends FrameLayout implements } void hideRecentsOnboarding() { - mRecentsOnboarding.hide(true); + if (mRecentsOnboarding != null) { + mRecentsOnboarding.hide(true); + } } @Override @@ -953,7 +958,9 @@ public class NavigationBarView extends FrameLayout implements super.onLayout(changed, left, top, right, bottom); notifyActiveTouchRegions(); - mRecentsOnboarding.setNavBarHeight(getMeasuredHeight()); + if (mRecentsOnboarding != null) { + mRecentsOnboarding.setNavBarHeight(getMeasuredHeight()); + } } /** @@ -1115,7 +1122,9 @@ public class NavigationBarView extends FrameLayout implements boolean uiCarModeChanged = updateCarMode(); updateIcons(mTmpLastConfiguration); updateRecentsIcon(); - mRecentsOnboarding.onConfigurationChanged(mConfiguration); + if (mRecentsOnboarding != null) { + mRecentsOnboarding.onConfigurationChanged(mConfiguration); + } if (uiCarModeChanged || mTmpLastConfiguration.densityDpi != mConfiguration.densityDpi || mTmpLastConfiguration.getLayoutDirection() != mConfiguration.getLayoutDirection()) { // If car mode or density changes, we need to reset the icons. @@ -1205,10 +1214,12 @@ public class NavigationBarView extends FrameLayout implements } private void setUpSwipeUpOnboarding(boolean connectedToOverviewProxy) { - if (connectedToOverviewProxy) { - mRecentsOnboarding.onConnectedToLauncher(); - } else { - mRecentsOnboarding.onDisconnectedFromLauncher(); + if (mRecentsOnboarding != null) { + if (connectedToOverviewProxy) { + mRecentsOnboarding.onConnectedToLauncher(); + } else { + mRecentsOnboarding.onDisconnectedFromLauncher(); + } } } @@ -1254,7 +1265,9 @@ public class NavigationBarView extends FrameLayout implements mNavigationInflaterView.dump(pw); } mContextualButtonGroup.dump(pw); - mRecentsOnboarding.dump(pw); + if (mRecentsOnboarding != null) { + mRecentsOnboarding.dump(pw); + } mRegionSamplingHelper.dump(pw); mEdgeBackGestureHandler.dump(pw); } diff --git a/services/core/java/com/android/server/locksettings/BiometricDeferredQueue.java b/services/core/java/com/android/server/locksettings/BiometricDeferredQueue.java index e3074dba26ef9..ddd56c890c2f7 100644 --- a/services/core/java/com/android/server/locksettings/BiometricDeferredQueue.java +++ b/services/core/java/com/android/server/locksettings/BiometricDeferredQueue.java @@ -123,6 +123,10 @@ public class BiometricDeferredQueue { final VerifyCredentialResponse response = spManager.verifyChallengeInternal( getGatekeeperService(), userAuthInfo.gatekeeperPassword, challenge, userAuthInfo.userId); + if (response == null) { + Slog.wtf(TAG, "VerifyChallenge failed, null response"); + continue; + } if (response.getResponseCode() != VerifyCredentialResponse.RESPONSE_OK) { Slog.wtf(TAG, "VerifyChallenge failed, response: " + response.getResponseCode());