- Electron version: 1.1.0
- Operating system: N/A

Currently there isn't any way to remove dialog boxes (such as ones created through `dialog.showMessageBox`).  This can be useful in, for example, "Keep Waiting" dialogs.  After the window becomes responsive again it would be great if we could programmatically close the dialog.

shell/browser/ui/message_box_win.cc
MessageBoxSettings::MessageBoxSettings(const MessageBoxSettings&) = default;
MessageBoxSettings::~MessageBoxSettings() = default;
namespace {
const int kIDStart = 100;
struct CommonButtonID {
  int button;
  int id;
};
CommonButtonID GetCommonID(const std::wstring& button) {
  std::wstring lower = base::ToLowerASCII(button);
  if (lower == L"ok")
    return {TDCBF_OK_BUTTON, IDOK};
  else if (lower == L"yes")
    return {TDCBF_YES_BUTTON, IDYES};
  else if (lower == L"no")
    return {TDCBF_NO_BUTTON, IDNO};
  else if (lower == L"cancel")
    return {TDCBF_CANCEL_BUTTON, IDCANCEL};
  else if (lower == L"retry")
    return {TDCBF_RETRY_BUTTON, IDRETRY};
  else if (lower == L"close")
    return {TDCBF_CLOSE_BUTTON, IDCLOSE};
  return {-1, -1};
}
void MapToCommonID(const std::vector<std::wstring>& buttons,