Pārlūkot izejas kodu

Showing messag on snackbar incase of logout and delete API not working

Khubaib 7 mēneši atpakaļ
vecāks
revīzija
325d73f74e

+ 13 - 4
app/src/main/java/com/vpn/fastestvpnservice/screens/bottomNavBarScreens/AccountScreen.kt

@@ -36,6 +36,7 @@ import androidx.compose.material3.ButtonDefaults
 import androidx.compose.material3.CircularProgressIndicator
 import androidx.compose.material3.ExperimentalMaterial3Api
 import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.SnackbarHostState
 import androidx.compose.material3.Surface
 import androidx.compose.material3.Text
 import androidx.compose.runtime.Composable
@@ -79,9 +80,11 @@ import com.vpn.fastestvpnservice.utils.VPNConnectionsUtil
 import com.vpn.fastestvpnservice.utils.isTablet
 import com.vpn.fastestvpnservice.viewmodels.AccountViewModel
 import com.vpn.fastestvpnservice.viewmodels.HomeViewModel
+import com.vpn.fastestvpnservice.views.ShowCustomSnackBar
 import com.vpn.fastestvpnservice.widgets.SimpleAppWidget
 import de.blinkt.openvpn.core.App
 import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
 
 //var LocalLoggedOut = staticCompositionLocalOf<Boolean> { false }
 
@@ -97,6 +100,8 @@ fun Account(navHostController: NavHostController,
     val accountViewModel: AccountViewModel = viewModel()
     val scope = rememberCoroutineScope()
     val homeViewModel: HomeViewModel = viewModel{ HomeViewModel(context, scope) }
+    val snackBarStateRed = remember { SnackbarHostState() }
+    val coroutineScope = rememberCoroutineScope()
 
     LaunchedEffect(key1 = Unit) {
         homeViewModel.validatePassword(
@@ -136,6 +141,8 @@ fun Account(navHostController: NavHostController,
             window.statusBarColor = Color.Transparent.toArgb()
             window.navigationBarColor = Color.Transparent.toArgb()
 
+            ShowCustomSnackBar(snackBarStateRed, R.color.Red, R.color.white)
+
             Column(
                 verticalArrangement = Arrangement.Top,
                 horizontalAlignment = Alignment.Start,
@@ -294,9 +301,10 @@ fun Account(navHostController: NavHostController,
                     context.sendBroadcast(widgetIntent)
                 }
                 else {
-                    Log.d("test_api_response","Logout false: $logoutResponse")
                     accountViewModel.mutableLiveDataLogoutStatus.value = false
-                    Toast.makeText(context, logoutResponse.toString(), Toast.LENGTH_SHORT).show()
+                    coroutineScope.launch {
+                        snackBarStateRed.showSnackbar(context.getString(R.string.something_went_wrong))
+                    }
                 }
                 accountViewModel.mutableLiveDataLogout.value = null
             }
@@ -313,9 +321,10 @@ fun Account(navHostController: NavHostController,
                     settingsNavHostController.navigate(Screen.Started.route)
                 }
                 else {
-                    Log.d("test_api_response","Delete false: ${deleteResponse.status}")
                     accountViewModel.mutableLiveDataDeleteStatus.value = false
-                    Toast.makeText(context, deleteResponse.status.toString(), Toast.LENGTH_SHORT).show()
+                    coroutineScope.launch {
+                        snackBarStateRed.showSnackbar(context.getString(R.string.something_went_wrong))
+                    }
                 }
                 accountViewModel.mutableLiveDataDelete.value = null
             }