From 1c7c499166e18dc7b224cf67f649d796eca72976 Mon Sep 17 00:00:00 2001 From: Tangem Date: Thu, 1 Dec 2022 16:25:36 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../disclaimer/ui/DisclaimerFragment.kt | 50 +++++++------------ 1 file changed, 18 insertions(+), 32 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/disclaimer/ui/DisclaimerFragment.kt b/app/src/main/java/com/tangem/tap/features/disclaimer/ui/DisclaimerFragment.kt index b13e5b588b..633ef10d6a 100644 --- a/app/src/main/java/com/tangem/tap/features/disclaimer/ui/DisclaimerFragment.kt +++ b/app/src/main/java/com/tangem/tap/features/disclaimer/ui/DisclaimerFragment.kt @@ -2,13 +2,13 @@ package com.tangem.tap.features.disclaimer.ui import android.os.Bundle import android.view.View -import androidx.activity.OnBackPressedCallback -import androidx.fragment.app.Fragment import androidx.transition.TransitionInflater import by.kirich1409.viewbindingdelegate.viewBinding import com.tangem.tap.common.extensions.configureSettings import com.tangem.tap.common.extensions.hide -import com.tangem.tap.common.redux.navigation.NavigationAction +import com.tangem.tap.common.redux.AppState +import com.tangem.tap.features.BaseFragment +import com.tangem.tap.features.addBackPressHandler import com.tangem.tap.features.disclaimer.redux.DisclaimerAction import com.tangem.tap.features.disclaimer.redux.DisclaimerState import com.tangem.tap.store @@ -16,32 +16,23 @@ import com.tangem.wallet.R import com.tangem.wallet.databinding.FragmentDisclaimerBinding import org.rekotlin.StoreSubscriber -class DisclaimerFragment : Fragment(R.layout.fragment_disclaimer), - StoreSubscriber { +class DisclaimerFragment : BaseFragment(R.layout.fragment_disclaimer), StoreSubscriber { private val binding: FragmentDisclaimerBinding by viewBinding(FragmentDisclaimerBinding::bind) - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - activity?.onBackPressedDispatcher?.addCallback( - this, - object : OnBackPressedCallback(true) { - override fun handleOnBackPressed() { - store.dispatch(NavigationAction.PopBackTo()) - } - }, - ) - val inflater = TransitionInflater.from(requireContext()) - enterTransition = inflater.inflateTransition(android.R.transition.slide_bottom) - exitTransition = inflater.inflateTransition(android.R.transition.slide_top) + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + addBackPressHandler(handler = this) + binding.toolbar.setNavigationOnClickListener { handleOnBackPressed() } + binding.webView.configureSettings() } override fun onStart() { super.onStart() - store.subscribe(this) { state -> - state.skipRepeats { oldState, newState -> - oldState.disclaimerState == newState.disclaimerState - }.select { it.disclaimerState } + store.subscribe(subscriber = this) { state -> + state + .skipRepeats { oldState, newState -> oldState.disclaimerState == newState.disclaimerState } + .select(AppState::disclaimerState) } } @@ -50,16 +41,11 @@ class DisclaimerFragment : Fragment(R.layout.fragment_disclaimer), store.unsubscribe(this) } - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - binding.toolbar.setNavigationOnClickListener { - store.dispatch(NavigationAction.PopBackTo()) - } - initViews() - } - - private fun initViews() { - binding.webView.configureSettings() + override fun configureTransitions() { + super.configureTransitions() + val inflater = TransitionInflater.from(requireContext()) + enterTransition = inflater.inflateTransition(android.R.transition.fade) + exitTransition = inflater.inflateTransition(android.R.transition.fade) } override fun newState(state: DisclaimerState) = with(binding) {