TP-77052 | bbps and upi screen transition from home page (#12049)
This commit is contained in:
@@ -28,6 +28,8 @@ import com.navi.bbps.common.utils.ErrorEventHandler
|
||||
import com.navi.common.model.ModuleNameV2
|
||||
import com.navi.common.ui.activity.BaseActivity
|
||||
import com.navi.common.utils.Constants.NEEDS_RESULT
|
||||
import com.navi.common.utils.screenEnterTransition
|
||||
import com.navi.common.utils.screenExitTransition
|
||||
import dagger.Lazy
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import javax.inject.Inject
|
||||
@@ -63,6 +65,7 @@ class NaviBbpsActivity : BaseActivity(), BackButtonHandler {
|
||||
|
||||
@OptIn(ExperimentalFoundationApi::class)
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
screenEnterTransition()
|
||||
super.onCreate(savedInstanceState)
|
||||
initPermissionsManager()
|
||||
WindowCompat.setDecorFitsSystemWindows(window, true)
|
||||
@@ -96,5 +99,6 @@ class NaviBbpsActivity : BaseActivity(), BackButtonHandler {
|
||||
)
|
||||
}
|
||||
super.finish()
|
||||
screenExitTransition()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,6 +59,7 @@ private const val TRANSITION_DURATION_IN_MILLIS = 400
|
||||
private const val PAY_BILL_SCREEN = "pay_bill_screen"
|
||||
private const val CUSTOMER_DATA_INPUT_SCREEN = "customer_data_input_screen"
|
||||
private const val BBPS_POST_PAYMENT_SCREEN = "bbps_post_payment_screen"
|
||||
private const val BBPS_ROUTING_LAUNCHER_SCREEN = "bbps_routing_launcher_screen"
|
||||
|
||||
typealias IsErrorVisible = Boolean
|
||||
|
||||
@@ -192,7 +193,9 @@ private fun naviHostEngine(): NavHostEngine {
|
||||
rootDefaultAnimations =
|
||||
RootNavGraphDefaultAnimations(
|
||||
enterTransition = {
|
||||
if (restrictEnterTransitionForPayBillScreen()) {
|
||||
if (
|
||||
restrictEnterTransitionForPayBillScreen() || isSourceRoutingLauncherScreen()
|
||||
) {
|
||||
EnterTransition.None
|
||||
} else {
|
||||
slideIntoContainer(
|
||||
@@ -233,6 +236,9 @@ private fun AnimatedContentTransitionScope<NavBackStackEntry>
|
||||
this.targetState.destination.route?.contains(PAY_BILL_SCREEN).orFalse() &&
|
||||
!this.initialState.destination.route?.contains(CUSTOMER_DATA_INPUT_SCREEN).orFalse()
|
||||
|
||||
private fun AnimatedContentTransitionScope<NavBackStackEntry>.isSourceRoutingLauncherScreen() =
|
||||
this.initialState.destination.route?.contains(BBPS_ROUTING_LAUNCHER_SCREEN).orFalse()
|
||||
|
||||
private fun AnimatedContentTransitionScope<NavBackStackEntry>.shouldEnableVerticalDownTransition():
|
||||
Boolean {
|
||||
return this.initialState.destination.route?.contains(BBPS_POST_PAYMENT_SCREEN).orFalse()
|
||||
|
||||
@@ -39,6 +39,7 @@ object NaviBbpsRouter {
|
||||
putExtra(SOURCE_MODULE, sourceModule)
|
||||
putExtra(START_SCREEN_NAME, screenName)
|
||||
putExtras(bundle)
|
||||
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
||||
}
|
||||
|
||||
if (needsResult == true && requestCode != null) {
|
||||
|
||||
@@ -54,6 +54,7 @@ import com.navi.base.utils.isNotNull
|
||||
import com.navi.base.utils.isNull
|
||||
import com.navi.base.utils.orElse
|
||||
import com.navi.common.CommonLibManager
|
||||
import com.navi.common.R
|
||||
import com.navi.common.customview.CustomTypefaceSpan
|
||||
import com.navi.common.listeners.ClickableTextListener
|
||||
import com.navi.common.network.models.RepoResult
|
||||
@@ -661,3 +662,11 @@ fun containsEmoji(input: String): Boolean {
|
||||
val regex = Regex("[\\uD83C-\\uDBFF\\uDC00-\\uDFFF]+")
|
||||
return regex.containsMatchIn(input)
|
||||
}
|
||||
|
||||
fun Activity.screenEnterTransition() {
|
||||
overridePendingTransition(R.anim.parallax_slide_in_right, R.anim.parallax_slide_out_left)
|
||||
}
|
||||
|
||||
fun Activity.screenExitTransition() {
|
||||
overridePendingTransition(R.anim.parallax_slide_in_left, R.anim.parallax_slide_out_right)
|
||||
}
|
||||
|
||||
@@ -28,6 +28,8 @@ import com.navi.base.utils.orFalse
|
||||
import com.navi.common.model.ModuleNameV2
|
||||
import com.navi.common.ui.activity.BaseActivity
|
||||
import com.navi.common.utils.CriticalJourneyUtil
|
||||
import com.navi.common.utils.screenEnterTransition
|
||||
import com.navi.common.utils.screenExitTransition
|
||||
import com.navi.pay.R
|
||||
import com.navi.pay.analytics.NaviPayAnalytics
|
||||
import com.navi.pay.common.model.view.ErrorVisibilityEvent
|
||||
@@ -98,6 +100,7 @@ class NaviPayActivity : BaseActivity() {
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
screenEnterTransition()
|
||||
super.onCreate(savedInstanceState)
|
||||
isActivityRecreated = savedInstanceState?.getBoolean(IS_ACTIVITY_RECREATED).orFalse()
|
||||
initFromIntent(intent)
|
||||
@@ -252,6 +255,7 @@ class NaviPayActivity : BaseActivity() {
|
||||
)
|
||||
}
|
||||
super.finish()
|
||||
screenExitTransition()
|
||||
}
|
||||
|
||||
override fun onSaveInstanceState(outState: Bundle) {
|
||||
|
||||
Reference in New Issue
Block a user