Nested dialogs can have focus problems due to Bootstrap-modal #9524
Description
It turns out that Bootstrap-modal doesn't really support nested dialogs. Two enforceFocus() listeners will be registered at once in that case, and they'll fight over the focus. Normally, we avoid this because the root elements of our dialogs aren't focusable (no tabIndex) -- which breaks enforceFocus() entirely. But if you do make the root element focusable (as in PR #8856), then nested dialogs can't receive keyboard focus (as in #9196, which was caused by that PR).
To avoid from hitting this again, we should either:
a) Patch bootstrap-modal to disable or fix enforceFocus(). (Disabling seems fine -- since it normally doesn't work at all, we aren't really relying on it anyway).
b) Try to move Dialogs away from bootstrap-modal entirely. At this point it seems like we've already reimplemented most of what it provides, since it didn't do what we wanted... so it might not be too hard to remove what's left of our dependency on it.