I needed a [Material ExposedDropdownMenu](
https://material.io/components/menus#exposed-dropdown-menu), so I built one by combining an OutlinedTextField and a DropdownMenu. What I've built works, but feels a little hacky. I ended up needing to use SubcomposeLayout and MutableInteractionSource for the first time. Does that sound reasonable?
The code:
https://gist.github.com/danielzfranklin/6af017eec110dee4980167bb833077ef
I use SubcomposeLayout because DropdownMenu opens a popup outside the normal flow, so if I want it to be properly positioned and sized I need to know the size of the field. I use MutableInteractionSource to make the text field focused when the menu is expanded, and visa-versa.