fix: google messed up my back handler
Signed-off-by: Infi <wingit@geist.ga>
This commit is contained in:
parent
c2c72ecfe1
commit
e9f4259da5
|
|
@ -200,9 +200,15 @@ fun ChatRouterScreen(topNav: NavController, viewModel: ChatRouterViewModel = hil
|
|||
var userContextSheetTarget by remember { mutableStateOf("") }
|
||||
var userContextSheetServer by remember { mutableStateOf<String?>(null) }
|
||||
|
||||
BackHandler(enabled = drawerState.isClosed) {
|
||||
scope.launch {
|
||||
drawerState.open()
|
||||
val drawerBackHandler = remember {
|
||||
{
|
||||
scope.launch {
|
||||
if (drawerState.isOpen) {
|
||||
drawerState.close()
|
||||
} else {
|
||||
drawerState.open()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -488,10 +494,17 @@ fun ChatRouterScreen(topNav: NavController, viewModel: ChatRouterViewModel = hil
|
|||
Column(Modifier.fillMaxSize()) {
|
||||
NavHost(navController = navController, startDestination = "home") {
|
||||
composable("home") {
|
||||
BackHandler {
|
||||
drawerBackHandler()
|
||||
}
|
||||
HomeScreen(navController = topNav)
|
||||
}
|
||||
|
||||
composable("channel/{channelId}") { backStackEntry ->
|
||||
BackHandler {
|
||||
drawerBackHandler()
|
||||
}
|
||||
|
||||
val channelId = backStackEntry.arguments?.getString("channelId")
|
||||
if (channelId != null) {
|
||||
ChannelScreen(
|
||||
|
|
@ -514,6 +527,10 @@ fun ChatRouterScreen(topNav: NavController, viewModel: ChatRouterViewModel = hil
|
|||
}
|
||||
|
||||
composable("no_current_channel") {
|
||||
BackHandler {
|
||||
drawerBackHandler()
|
||||
}
|
||||
|
||||
NoCurrentChannelScreen()
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue