On mobile devices the ComboBox is only useful if you have just a few items. It’s indeed quite horrible otherwise.
You could replace the ComboBox with a TextButton which then opens a PopupMenu. Look at the method showMenuAsync() for this. You have options to set the position of the menu, it’s size, which items are visible, etc. You can’t control everything but that might already be enough.
This is also a great improvement (I really don’t understand why it hasn’t been implemented): Improving PopupMenu for touch screens
Anternatively you could have the TextButton open a custom component. I made my own “menu within a window” using a ViewPort and a TreeView. It can be scrolled by dragging and sub-menus can be easily expanded and closed. It required modifying the JUCE codebase here and there but I’m very happy with the result. In fact, I think its considerably nicer than anything I could have done using the native UIs.
