diff --git a/app/src/main/java/com/tangem/tap/features/home/HomeFragment.kt b/app/src/main/java/com/tangem/tap/features/home/HomeFragment.kt index 6c5252352c..95b558c438 100644 --- a/app/src/main/java/com/tangem/tap/features/home/HomeFragment.kt +++ b/app/src/main/java/com/tangem/tap/features/home/HomeFragment.kt @@ -19,7 +19,6 @@ import com.tangem.core.navigation.NavigationAction import com.tangem.core.ui.res.TangemTheme import com.tangem.feature.learn2earn.presentation.Learn2earnViewModel import com.tangem.tap.common.analytics.events.IntroductionProcess -import com.tangem.tap.common.extensions.dispatchOnMain import com.tangem.tap.features.home.compose.StoriesScreen import com.tangem.tap.features.home.redux.HomeAction import com.tangem.tap.features.home.redux.HomeState @@ -40,14 +39,14 @@ class HomeFragment : Fragment(), StoreSubscriber { super.onCreate(savedInstanceState) store.dispatch(HomeAction.OnCreate) store.dispatch(HomeAction.Init) - if (learn2earnViewModel.uiState.storyScreenState.isVisible) { - store.dispatchOnMain(HomeAction.InsertStory(position = 0, Stories.OneInchPromo)) - // re init homeState after inserting learn2earn story - homeState = mutableStateOf(store.state.homeState) - } } override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + // sync adding story before screen creation + if (learn2earnViewModel.uiState.storyScreenState.isVisible) { + store.dispatch(HomeAction.InsertStory(position = 0, Stories.OneInchPromo)) + homeState.value = store.state.homeState + } return ComposeView(inflater.context).apply { setContent { TangemTheme { diff --git a/features/learn2earn/impl/src/main/java/com/tangem/feature/learn2earn/domain/DefaultLearn2earnInteractor.kt b/features/learn2earn/impl/src/main/java/com/tangem/feature/learn2earn/domain/DefaultLearn2earnInteractor.kt index f3494f56b3..e7988b5050 100644 --- a/features/learn2earn/impl/src/main/java/com/tangem/feature/learn2earn/domain/DefaultLearn2earnInteractor.kt +++ b/features/learn2earn/impl/src/main/java/com/tangem/feature/learn2earn/domain/DefaultLearn2earnInteractor.kt @@ -277,7 +277,7 @@ internal class DefaultLearn2earnInteractor( promotionInfo.oldCard.status == PromotionInfoResponse.Status.ACTIVE } else { when (promotionInfo.newCard.status) { - PromotionInfoResponse.Status.PENDING -> false + PromotionInfoResponse.Status.PENDING -> !promoUserData.isAlreadyReceivedAward PromotionInfoResponse.Status.ACTIVE -> true // disable promotion for a new user only if they have received an award PromotionInfoResponse.Status.FINISHED -> !promoUserData.isAlreadyReceivedAward