mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 06:01:40 +00:00
Branch signout
This commit is contained in:
@@ -4,6 +4,7 @@ import androidx.compose.runtime.Composable
|
|||||||
import com.ramcosta.composedestinations.annotation.Destination
|
import com.ramcosta.composedestinations.annotation.Destination
|
||||||
import com.ramcosta.composedestinations.annotation.RootNavGraph
|
import com.ramcosta.composedestinations.annotation.RootNavGraph
|
||||||
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
|
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
|
||||||
|
import io.element.android.x.destinations.LoginScreenNavigationDestination
|
||||||
import io.element.android.x.destinations.RoomListScreenNavigationDestination
|
import io.element.android.x.destinations.RoomListScreenNavigationDestination
|
||||||
import io.element.android.x.features.login.LoginScreen
|
import io.element.android.x.features.login.LoginScreen
|
||||||
import io.element.android.x.features.roomlist.RoomListScreen
|
import io.element.android.x.features.roomlist.RoomListScreen
|
||||||
@@ -21,8 +22,10 @@ fun LoginScreenNavigation(navigator: DestinationsNavigator) {
|
|||||||
@RootNavGraph(start = true)
|
@RootNavGraph(start = true)
|
||||||
@Destination
|
@Destination
|
||||||
@Composable
|
@Composable
|
||||||
fun RoomListScreenNavigation() {
|
fun RoomListScreenNavigation(navigator: DestinationsNavigator) {
|
||||||
RoomListScreen()
|
RoomListScreen(onSuccessLogout = {
|
||||||
|
navigator.clearBackStack(LoginScreenNavigationDestination)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+12
-2
@@ -23,11 +23,21 @@ import io.element.android.x.matrix.room.RoomSummary
|
|||||||
@Composable
|
@Composable
|
||||||
fun RoomListScreen(
|
fun RoomListScreen(
|
||||||
viewModel: RoomListViewModel = mavericksViewModel(),
|
viewModel: RoomListViewModel = mavericksViewModel(),
|
||||||
onLogoutClicked: () -> Unit = { },
|
onSuccessLogout: () -> Unit = { },
|
||||||
onRoomClicked: (RoomId) -> Unit = { }
|
onRoomClicked: (RoomId) -> Unit = { }
|
||||||
) {
|
) {
|
||||||
val state by viewModel.collectAsState()
|
val state by viewModel.collectAsState()
|
||||||
RoomListContent(state, onRoomClicked, onLogoutClicked)
|
if (state.logoutAction is Success) {
|
||||||
|
onSuccessLogout()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
RoomListContent(
|
||||||
|
state = state,
|
||||||
|
onRoomClicked = onRoomClicked,
|
||||||
|
onLogoutClicked = {
|
||||||
|
viewModel.handle(RoomListActions.Logout)
|
||||||
|
}
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
Reference in New Issue
Block a user