瀏覽代碼

set navigation of subscription, working on serverCallback after subscription

Khubaib 1 年之前
父節點
當前提交
a1d7a1f442

+ 2 - 0
app/src/main/java/com/vpn/fastestvpnservice/customItems/CountryItem.kt

@@ -153,6 +153,7 @@ fun CountryItem(
 //                                basePreferenceHelper.setServerObject(server)
                                 isCountryServerClicked = true
                             } else {
+                                Screen.Subscription.isTrue = true
                                 navHostController.navigate(
                                     Screen.Subscription.route
                                 )
@@ -324,6 +325,7 @@ fun ColumnScope.ExpandableRow(
 //                                    basePreferenceHelper.setServerObject(serverInfo)
                                     isExpServerClicked = true
                                 } else {
+                                    Screen.Subscription.isTrue = true
                                     navHostController.navigate(
                                         Screen.Subscription.route
                                     )

+ 4 - 0
app/src/main/java/com/vpn/fastestvpnservice/customItems/ServerItem.kt

@@ -132,6 +132,7 @@ fun ServerItem(server: Server, navHostController: NavHostController, serverPing:
 //                        basePreferenceHelper.setServerObject(server)
                         isServerClicked = true
                     } else {
+                        Screen.Subscription.isTrue = true
                         navHostController.navigate(
                             Screen.Subscription.route
                         )
@@ -285,6 +286,7 @@ fun FavoriteServerItem(server: Server, navHostController: NavHostController) {
                     if (server.enable == 1) {
                         isFavServerClicked = true
                     } else {
+                        Screen.Subscription.isTrue = true
                         navHostController.navigate(
                             Screen.Subscription.route
                         )
@@ -455,6 +457,7 @@ fun ServerSearchItem(
                             onServerDisable()
                         }
                     } else {
+                        Screen.Subscription.isTrue = true
                         navHostController.navigate(
                             Screen.Subscription.route
                         )
@@ -598,6 +601,7 @@ fun ServerSpecificItem(
                         basePreferenceHelper.setSmartServerObject(server)
                         onServerDisable()
                     } else {
+                        Screen.Subscription.isTrue = true
                         navHostController.navigate(
                             Screen.Subscription.route
                         )

+ 16 - 7
app/src/main/java/com/vpn/fastestvpnservice/screens/accountScreensAll/SubscriptionScreen.kt

@@ -88,6 +88,7 @@ import com.vpn.fastestvpnservice.customItems.SubscriptionPackageItem
 import com.vpn.fastestvpnservice.customItems.getSelectedPosition
 import com.vpn.fastestvpnservice.helpers.BasePreferenceHelper
 import com.vpn.fastestvpnservice.screens.bottomNavBarScreens.OnLifecycleEvent
+import com.vpn.fastestvpnservice.sealedClass.BottomBarScreen
 import com.vpn.fastestvpnservice.sealedClass.Screen
 import com.vpn.fastestvpnservice.ui.theme.FastestVPNTheme
 import com.vpn.fastestvpnservice.ui.theme.customTypography2
@@ -225,17 +226,24 @@ fun SubscriptionScreen(navHostController: NavHostController, activity: Component
 
             onClick = {
                 selectedPosition = getSelectedPosition()
-//                Toast.makeText(context, "$selectedPosition", Toast.LENGTH_SHORT).show()
                 Log.d("test_button", "onClick")
-//                subscriptionViewModel.mutableLiveDataNumber.value = 1
                 Log.d("SubscriptionViewModel", "liveData ${skuDetailsListsSubs}")
 
-//                subscriptionViewModel.startConnection(selectedPosition)
-                if (skuDetailsListsSubs != null) {
-                    subscriptionViewModel.subscriptionProduct(
-                        selectedPosition, skuDetailsListsSubs, activity
-                    )
+                if (Screen.Subscription.isTrue)
+                {
+                    navHostController.popBackStack(BottomBarScreen.Home.route, false)
+                } else {
+                    navHostController.popBackStack()
                 }
+                Screen.Subscription.isTrue = false
+
+
+//                subscriptionViewModel.startConnection(selectedPosition)
+//                if (skuDetailsListsSubs != null) {
+//                    subscriptionViewModel.subscriptionProduct(
+//                        selectedPosition, skuDetailsListsSubs, activity
+//                    )
+//                }
 
             },
             modifier = Modifier
@@ -312,6 +320,7 @@ fun OnLifecycleEventSS(onEvent: (
 fun BoxScope.HeaderRowSS(navHostController: NavHostController) {
     IconButton(
         onClick = {
+            Screen.Subscription.isTrue = false
             navHostController.popBackStack()
 //                    navHostController.navigate(BottomBarScreen.Help.route)
         },

+ 3 - 1
app/src/main/java/com/vpn/fastestvpnservice/screens/bottomNavBarScreens/HomeScreen.kt

@@ -205,7 +205,8 @@ lateinit var vpnConnectionsUtil: VPNConnectionsUtil
          }
          else {
              Log.d("OnChangeProtocol", "getEnableProtocols no! ${navHostController1.currentDestination}")
-                navHostController1.let {
+//             Screen.Subscription.isTrue = true
+             navHostController1.let {
                     it.navigate(Screen.Subscription.route)
                 }
          }
@@ -414,6 +415,7 @@ fun Home(navHostController: NavHostController, activity: ComponentActivity) {
 
                     if (identifier == AppEnum.FREE.key) {
                         Log.d("isConnect_State", "identifier -> $identifier")
+                        Screen.Subscription.isTrue = true
                         navHostController.navigate(
                             Screen.Subscription.route
                         )