Switch from associated type to generic on EventEmitter trait (#3281)

This removes a lot of ad-hoc event translation code in the workspace and
replaces it with a GPUI feature and trait bounds.

TODO:
- [x] Proof out idea
- [x] Convert the workspace
- [x] Convert the rest of the app

Release Notes:

- N/A
e2130ca444Mikayla Maki committed on 11/9/2023, 4:16:33 AM· committed by GitHubparents97ce9e92c67cc8
31 files changedLine totals unavailable