Coroutine

Hello, I have a question please. A click on the menu button does not indicate a reaction. Where is the error? The code is very simple, i can’t find it!

package at.hanami.ndcompose

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.*
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Close
import androidx.compose.material.icons.filled.Menu
import androidx.compose.material.icons.filled.Search
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
import at.hanami.ndcompose.ui.theme.NDComposeTheme
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            NDComposeTheme {
                ScaffoldCompose()
            }
        }
    }
}

@Composable
fun ScaffoldCompose() {
    val scaffoldState = rememberScaffoldState()
    val scope = rememberCoroutineScope()
    Scaffold(
        topBar = { TopAppBarCompose(scaffoldState, scope) },
        drawerContent = { DrawerCompose() },
        drawerBackgroundColor = Color.DarkGray,
        drawerContentColor = Color.White,
        drawerShape = RoundedCornerShape(bottomEnd = 50.dp)
    ) { it.toString() }
}

@Composable
fun TopAppBarCompose(scaffoldState: ScaffoldState, scope: CoroutineScope) {
    TopAppBar(
        title = { Text(text = "Example") },
        navigationIcon = {
            IconButton(onClick = {
                scope.launch { scaffoldState.drawerState.open() }
            }) {
                Icon(imageVector = Icons.Default.Menu, contentDescription = "Menu")
            }
        },
        actions = {
            IconButton(onClick = { /*TODO*/ }) {
                Icon(imageVector = Icons.Default.Search, contentDescription = "Search")
            }
        },
        backgroundColor = Color.DarkGray,
        contentColor = Color.White
    )

}

@Composable
fun DrawerCompose() {
    Column() {
        Row(modifier = Modifier.padding(20.dp)) {
            Box(
                modifier = Modifier
                    .fillMaxWidth()
                    .weight(10f)
                    .align(Alignment.CenterVertically)
            )
            Box(
                modifier = Modifier
                    .fillMaxWidth()
                    .weight(1f)
                    .align(Alignment.CenterVertically)
            ) {
                Icon(imageVector = Icons.Default.Close, contentDescription = "Close",
                    modifier = Modifier.clickable { }
                )
            }
        }
        Column(
            modifier = Modifier.fillMaxSize(),
            horizontalAlignment = Alignment.CenterHorizontally,
            verticalArrangement = Arrangement.Center
        ) {
            Text(text = "This is Drawer")
        }
    }
}

Thank you for your attention. Greetings Thomas