@victorwu I'm really not a fan of the two-click buttons—especially because they don't keep their state upon page reload. I still wanted to open an issue about that (and inconsistencies with other places in GitLab) but didn't have the time to do so. I hope to get the chance tomorrow and will ping you there.
I think we should consider how often users need to download plain diffs vs. email patches. I'm not aware of how these features are used, but here are the options I see:
If their use is split 50/50, the current dropdown model works best because users will want to select a different option every other time.
If it's 80/20, a split button would be a good fit because we can show a default option that most users will need most of the time
If it depends on each user's usual workflow, then a split button that remembers the last selected option like @winh mentioned would be what we need here
I'm more concerned about the dropdown style specifically. This is a place in the UI where there is a weird looking dropdown that doesn't match all others.
In terms of the functionality of dropdowns, I don't see why two-click buttons are good at all. My understanding is that that's what we have currently in GitLab. So this issue is more about bringing consistency and retiring old code/UI.