yayan 1 year ago
parent
commit
ff12bbf9d3

+ 9 - 6
app/src/main/java/io/nexilis/alpha/ui/components/Title.kt

@@ -41,13 +41,13 @@ fun Title(navMainController: NavHostController, title: String) {
         ?.let {
             pin = it
         }
-    if (isChat) {
+    if (isChat && pin.isNotEmpty()) {
         Row {
-            if (pin.isNotEmpty()) {
-                val buddy by buddyViewModel.getBuddy(pin).observeAsState()
+            val buddy by buddyViewModel.getBuddy(pin).observeAsState()
+            buddy?.let {
                 AsyncImage(
                     model = ImageRequest.Builder(LocalContext.current)
-                        .data("https://digixplatform.com/filepalio/image/${buddy?.image_id}")
+                        .data("https://digixplatform.com/filepalio/image/${it.image_id}")
                         .addHeader("Cookie", "PHPSESSID=123;MOBILE=123")
                         .crossfade(true)
                         .build(),
@@ -61,9 +61,12 @@ fun Title(navMainController: NavHostController, title: String) {
                         .background(Color.LightGray),
                     error = rememberVectorPainter(image = Icons.Default.Person),
                 )
+                Spacer(modifier = Modifier.width(8.dp))
+                Text(
+                    modifier = Modifier.align(Alignment.CenterVertically),
+                    text = "${buddy?.first_name} ${it.last_name}".trim()
+                )
             }
-            Spacer(modifier = Modifier.width(8.dp))
-            Text(modifier = Modifier.align(Alignment.CenterVertically), text = title)
         }
     } else {
         Text(text = title)

+ 0 - 11
app/src/main/java/io/nexilis/alpha/ui/main/Chat.kt

@@ -1,7 +1,6 @@
 package io.nexilis.alpha.ui.main
 
 import Attachments
-import androidx.compose.foundation.ExperimentalFoundationApi
 import androidx.compose.foundation.background
 import androidx.compose.foundation.layout.*
 import androidx.compose.foundation.lazy.LazyColumn
@@ -27,11 +26,9 @@ import androidx.hilt.navigation.compose.hiltViewModel
 import androidx.navigation.NavHostController
 import io.nexilis.alpha.ui.components.LeftBubbleChat
 import io.nexilis.alpha.ui.components.RightBubbleChat
-import io.nexilis.alpha.ui.viewmodel.MainViewModel
 import io.nexilis.service.core.WhiteTransparent
 import io.nexilis.service.data.entities.Buddy
 import io.nexilis.service.data.entities.Message
-import io.nexilis.service.data.viewmodels.BuddyViewModel
 import io.nexilis.service.data.viewmodels.MessageStatusViewModel
 import io.nexilis.service.data.viewmodels.MessageViewModel
 
@@ -39,22 +36,14 @@ import io.nexilis.service.data.viewmodels.MessageViewModel
 fun Chat(
     navController: NavHostController,
     pin: String,
-    mainViewModel: MainViewModel,
-    buddyViewModel: BuddyViewModel,
     me: Buddy?
 ) {
     var textInput by rememberSaveable(stateSaver = TextFieldValue.Saver) {
         mutableStateOf(TextFieldValue("", TextRange(0, 7)))
     }
-    val buddy by buddyViewModel.getBuddy(pin).observeAsState()
     val messageModel: MessageViewModel = hiltViewModel()
     val list by messageModel.getOpposite(pin).observeAsState()
     val messageStatusModel: MessageStatusViewModel = hiltViewModel()
-    LaunchedEffect(buddy) {
-        buddy?.first_name?.let {
-            mainViewModel.setTitle("$it ${buddy?.last_name ?: ""}".trim())
-        }
-    }
     val state = rememberLazyListState()
     Column(
         modifier = Modifier

+ 1 - 4
app/src/main/java/io/nexilis/alpha/ui/main/Main.kt

@@ -25,11 +25,10 @@ import io.nexilis.alpha.ui.components.Title
 import io.nexilis.alpha.ui.screen.Screen
 import io.nexilis.alpha.ui.viewmodel.MainViewModel
 import io.nexilis.service.data.entities.Buddy
-import io.nexilis.service.data.viewmodels.BuddyViewModel
 
 @OptIn(ExperimentalMaterial3Api::class)
 @Composable
-fun Main(navController: NavHostController, buddyViewModel: BuddyViewModel, me: Buddy?) {
+fun Main(navController: NavHostController, me: Buddy?) {
     val navMainController = rememberNavController()
     val hostState = remember { SnackbarHostState() }
     val navBackStackEntry by navMainController.currentBackStackEntryAsState()
@@ -107,8 +106,6 @@ fun Main(navController: NavHostController, buddyViewModel: BuddyViewModel, me: B
                             Chat(
                                 navController = navMainController,
                                 pin = pin,
-                                mainViewModel = mainViewModel,
-                                buddyViewModel = buddyViewModel,
                                 me = me
                             )
                         }

+ 13 - 15
app/src/main/java/io/nexilis/alpha/ui/main/Root.kt

@@ -1,6 +1,5 @@
 package io.nexilis.alpha.ui.main
 
-import android.util.Log
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.getValue
 import androidx.compose.runtime.livedata.observeAsState
@@ -23,23 +22,22 @@ fun Root(navController: NavHostController = rememberNavController()) {
         if (!isAnonymous) {
             start = Graph.home
         }
-    }
-    NavHost(navController = navController, route = Graph.root, startDestination = start) {
-        navigation(route = Graph.authentication, startDestination = Screen.SignIn.route) {
-            composable(route = Screen.SignIn.route) {
-                SignIn(navController = navController) {
-                    if (it) {
-                        Log.d("SAPI", ">>>>> got to home")
-                        navController.navigate(Graph.home)
+        NavHost(navController = navController, route = Graph.root, startDestination = start) {
+            navigation(route = Graph.authentication, startDestination = Screen.SignIn.route) {
+                composable(route = Screen.SignIn.route) {
+                    SignIn(navController = navController) {
+                        if (it) {
+                            navController.navigate(Graph.home)
+                        }
                     }
                 }
             }
-        }
-        composable(route = Graph.home) {
-            Main(navController = navController, buddyViewModel = viewModel, me = me)
-        }
-        composable(route = Screen.Friend.route) {
-            Friend(navController = navController)
+            composable(route = Graph.home) {
+                Main(navController = navController, me = me)
+            }
+            composable(route = Screen.Friend.route) {
+                Friend(navController = navController)
+            }
         }
     }
 }