diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java index 61113a05af164..a6fcde3be2a89 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java @@ -89,7 +89,6 @@ public class KeyguardBottomAreaView extends FrameLayout { private ActivityStarter mActivityStarter; private KeyguardStateController mKeyguardStateController; - private CentralSurfaces mCentralSurfaces; private FalsingManager mFalsingManager; private boolean mDozing; @@ -139,9 +138,38 @@ public class KeyguardBottomAreaView extends FrameLayout { super(context, attrs, defStyleAttr, defStyleRes); } - public void initFrom(KeyguardBottomAreaView oldBottomArea) { - setCentralSurfaces(oldBottomArea.mCentralSurfaces); + /** Initializes the {@link KeyguardBottomAreaView} with the given dependencies */ + public void init( + FalsingManager falsingManager, + QuickAccessWalletController controller, + ControlsComponent controlsComponent, + QRCodeScannerController qrCodeScannerController) { + mFalsingManager = falsingManager; + mQuickAccessWalletController = controller; + mQuickAccessWalletController.setupWalletChangeObservers( + mCardRetriever, WALLET_PREFERENCE_CHANGE, DEFAULT_PAYMENT_APP_CHANGE); + mQuickAccessWalletController.updateWalletPreference(); + mQuickAccessWalletController.queryWalletCards(mCardRetriever); + updateWalletVisibility(); + mControlsComponent = controlsComponent; + mControlsComponent.getControlsListingController().ifPresent( + c -> c.addCallback(mListingCallback)); + + mQRCodeScannerController = qrCodeScannerController; + mQRCodeScannerController.registerQRCodeScannerChangeObservers( + QRCodeScannerController.DEFAULT_QR_CODE_SCANNER_CHANGE, + QRCodeScannerController.QR_CODE_SCANNER_PREFERENCE_CHANGE); + updateQRCodeButtonVisibility(); + + updateAffordanceColors(); + } + + /** + * Initializes this instance of {@link KeyguardBottomAreaView} based on the given instance of + * another {@link KeyguardBottomAreaView} + */ + public void initFrom(KeyguardBottomAreaView oldBottomArea) { // if it exists, continue to use the original ambient indication container // instead of the newly inflated one if (mAmbientIndicationArea != null) { @@ -268,10 +296,6 @@ public class KeyguardBottomAreaView extends FrameLayout { updateAffordanceColors(); } - public void setCentralSurfaces(CentralSurfaces centralSurfaces) { - mCentralSurfaces = centralSurfaces; - } - private void updateWalletVisibility() { if (mDozing || mQuickAccessWalletController == null @@ -332,7 +356,7 @@ public class KeyguardBottomAreaView extends FrameLayout { return false; } - public void startFinishDozeAnimation() { + private void startFinishDozeAnimation() { long delay = 0; if (mWalletButton.getVisibility() == View.VISIBLE) { startFinishDozeAnimationElement(mWalletButton, delay); @@ -415,38 +439,6 @@ public class KeyguardBottomAreaView extends FrameLayout { return insets; } - /** Set the falsing manager */ - public void setFalsingManager(FalsingManager falsingManager) { - mFalsingManager = falsingManager; - } - - /** - * Initialize the wallet feature, only enabling if the feature is enabled within the platform. - */ - public void initWallet( - QuickAccessWalletController controller) { - mQuickAccessWalletController = controller; - mQuickAccessWalletController.setupWalletChangeObservers( - mCardRetriever, WALLET_PREFERENCE_CHANGE, DEFAULT_PAYMENT_APP_CHANGE); - mQuickAccessWalletController.updateWalletPreference(); - mQuickAccessWalletController.queryWalletCards(mCardRetriever); - - updateWalletVisibility(); - updateAffordanceColors(); - } - - /** - * Initialize the qr code scanner feature, controlled by QRCodeScannerController. - */ - public void initQRCodeScanner(QRCodeScannerController qrCodeScannerController) { - mQRCodeScannerController = qrCodeScannerController; - mQRCodeScannerController.registerQRCodeScannerChangeObservers( - QRCodeScannerController.DEFAULT_QR_CODE_SCANNER_CHANGE, - QRCodeScannerController.QR_CODE_SCANNER_PREFERENCE_CHANGE); - updateQRCodeButtonVisibility(); - updateAffordanceColors(); - } - private void updateQRCodeButtonVisibility() { if (mQuickAccessWalletController != null && mQuickAccessWalletController.isWalletEnabled()) { @@ -502,17 +494,6 @@ public class KeyguardBottomAreaView extends FrameLayout { mQRCodeScannerButton.setBackgroundTintList(bgColor); } - /** - * Initialize controls via the ControlsComponent - */ - public void initControls(ControlsComponent controlsComponent) { - mControlsComponent = controlsComponent; - mControlsComponent.getControlsListingController().ifPresent( - c -> c.addCallback(mListingCallback)); - - updateAffordanceColors(); - } - private void onWalletClick(View v) { // More coming here; need to inform the user about how to proceed if (mFalsingManager.isFalseTap(FalsingManager.LOW_PENALTY)) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java index 648bb0c0b8e6b..abda44c8e719d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java @@ -1118,7 +1118,6 @@ public class NotificationPanelViewController extends PanelViewController { private void setCentralSurfaces(CentralSurfaces centralSurfaces) { // TODO: this can be injected. mCentralSurfaces = centralSurfaces; - mKeyguardBottomArea.setCentralSurfaces(mCentralSurfaces); } public void updateResources() { @@ -1292,11 +1291,11 @@ public class NotificationPanelViewController extends PanelViewController { } private void initBottomArea() { - mKeyguardBottomArea.setCentralSurfaces(mCentralSurfaces); - mKeyguardBottomArea.setFalsingManager(mFalsingManager); - mKeyguardBottomArea.initWallet(mQuickAccessWalletController); - mKeyguardBottomArea.initControls(mControlsComponent); - mKeyguardBottomArea.initQRCodeScanner(mQRCodeScannerController); + mKeyguardBottomArea.init( + mFalsingManager, + mQuickAccessWalletController, + mControlsComponent, + mQRCodeScannerController); } @VisibleForTesting diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaTest.kt index 4b557dc423fff..3440fa5ac9b17 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaTest.kt @@ -42,7 +42,6 @@ class KeyguardBottomAreaTest : SysuiTestCase() { mKeyguardBottomArea = LayoutInflater.from(mContext).inflate( R.layout.keyguard_bottom_area, null, false) as KeyguardBottomAreaView - mKeyguardBottomArea.setCentralSurfaces(mCentralSurfaces) } @Test