**Is your feature request related to a problem? Please describe.**

Currently, the only way to show the About panel on macOS is by creating a `{role: 'about'}` menu item and click it. I need to be able to show it manually.

**Describe the solution you'd like**

Electron already has the method, so it's just about exposing this to JS and documenting it:

https://github.com/electron/electron/blob/8ba271efba691357ab1970c1a553b4e019125574/atom/browser/browser_mac.mm#L376

Would also be useful to be able to pass in the panel options directly to the method to override the defaults.

I would call the method: `app.showAboutPanel(options)`

**Describe alternatives you've considered**

None.
atom/browser/api/atom_api_app.cc
const std::string& type,
                                    const base::DictionaryValue& user_info) {
  if (Emit("update-activity-state", type, user_info)) {
    *prevent_default = true;
  }
}
void App::OnNewWindowForTab() {
  Emit("new-window-for-tab");
}
#endif
void App::OnLogin(scoped_refptr<LoginHandler> login_handler,
                  const base::DictionaryValue& request_details) {
  v8::Locker locker(isolate());
  v8::HandleScope handle_scope(isolate());
  bool prevent_default = false;
  content::WebContents* web_contents = login_handler->GetWebContents();
  if (web_contents) {
    prevent_default = Emit(
        "login", WebContents::FromOrCreate(isolate(), web_contents),
        request_details, login_handler->auth_info(),
        base::Bind(&PassLoginInformation, base::RetainedRef(login_handler)));
  }
  
  if (!prevent_default)
    login_handler->CancelAuth();
}
bool App::CanCreateWindow(