From 99fcb7d4d859d5bb08d78ee5259abda0fe11df36 Mon Sep 17 00:00:00 2001 From: Alexandru2909 Date: Wed, 15 Jun 2022 09:42:59 +0300 Subject: [PATCH] [fenix] Fixes https://github.com/mozilla-mobile/fenix/issues/25622 - PromptFeature use LoginDelegate and CreditCardDelegate as parameters for login and credit card pickers --- .../fenix/browser/BaseBrowserFragment.kt | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt index 07b735d61a..43ec6f9691 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt @@ -77,6 +77,8 @@ import mozilla.components.feature.session.SessionFeature import mozilla.components.feature.session.SwipeRefreshFeature import mozilla.components.concept.engine.permission.SitePermissions import mozilla.components.feature.prompts.address.AddressDelegate +import mozilla.components.feature.prompts.creditcard.CreditCardDelegate +import mozilla.components.feature.prompts.login.LoginDelegate import mozilla.components.feature.session.ScreenOrientationFeature import mozilla.components.feature.sitepermissions.SitePermissionsFeature import mozilla.components.lib.state.ext.consumeFlow @@ -621,22 +623,28 @@ abstract class BaseBrowserFragment : onNeedToRequestPermissions = { permissions -> requestPermissions(permissions, REQUEST_CODE_PROMPT_PERMISSIONS) }, - loginPickerView = binding.loginSelectBar, - onManageLogins = { - browserAnimator.captureEngineViewAndDrawStatically { + loginDelegate = object : LoginDelegate { + override val loginPickerView + get() = binding.loginSelectBar + override val onManageLogins = { + browserAnimator.captureEngineViewAndDrawStatically { + val directions = + NavGraphDirections.actionGlobalSavedLoginsAuthFragment() + findNavController().navigate(directions) + } + } + }, + creditCardDelegate = object : CreditCardDelegate { + override val creditCardPickerView + get() = binding.creditCardSelectBar + override val onManageCreditCards = { val directions = - NavGraphDirections.actionGlobalSavedLoginsAuthFragment() + NavGraphDirections.actionGlobalAutofillSettingFragment() findNavController().navigate(directions) } - }, - creditCardPickerView = binding.creditCardSelectBar, - onManageCreditCards = { - val directions = - NavGraphDirections.actionGlobalAutofillSettingFragment() - findNavController().navigate(directions) - }, - onSelectCreditCard = { - showBiometricPrompt(context) + override val onSelectCreditCard = { + showBiometricPrompt(context) + } }, addressDelegate = object : AddressDelegate { override val addressPickerView