### Preflight Checklist

- [X] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
- [X] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md) that this project adheres to.
- [X] I have searched the [issue tracker](https://www.github.com/electron/electron/issues) for a feature request that matches the one I want to file, without success.

### Problem Description

Hi,

My team is trying to support universal linking in our application. Currently, in order to receive a handoff event from the browser, the application needs to listen to `continue-activity` event which provides `type` and `userInfo`. As per the Apple documentation [here](https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/Handoff/AdoptingHandoff/AdoptingHandoff.html#//apple_ref/doc/uid/TP40014338-CH2-SW10), the browser sends the app an `NSUserActivity` object with an `activityType` value of `NSUserActivityTypeBrowsingWeb`. The `webpageURL` property contains the URL the user was visiting, while the `userInfo` dictionary is empty. 

To provide a smooth handoff our application needs to know the URL the user is navigating from. Therefore, it would be great if the `webpageURL` parameter is exposed in `continue-activity` event. 


### Proposed Solution

The `NSUserActivity` object contains the `webpageURL` property which is set during the handoff process. 
I don't have any experience with Objective C but I believe the `webpageURL` property on the `userActivity` object can be allowed to pass [here](https://github.com/electron/electron/blob/da2baabb96161ea08a15820451f9374d63b4d678/shell/browser/mac/electron_application_delegate.mm#L161) to make it accessible.
https://github.com/electron/electron/blob/da2baabb96161ea08a15820451f9374d63b4d678/shell/browser/mac/electron_application_delegate.mm#L161


### Alternatives Considered

-

### Additional Information

The application needs to know the URL from where the user is navigating to provide a customized handoff experience. 
shell/browser/api/electron_api_app.cc
WebContents* api_web_contents = WebContents::From(web_contents);
    
    if (api_web_contents) {
      api_web_contents->OnCreateWindow(target_url, referrer, frame_name,
                                       disposition, raw_features, body);
    }
  }
  return false;
}
void App::AllowCertificateError(
    content::WebContents* web_contents,
    int cert_error,
    const net::SSLInfo& ssl_info,
    const GURL& request_url,
    bool is_main_frame_request,
    bool strict_enforcement,
    base::OnceCallback<void(content::CertificateRequestResultType)> callback) {
  auto adapted_callback = base::AdaptCallbackForRepeating(std::move(callback));
  v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
  v8::Locker locker(isolate);
  v8::HandleScope handle_scope(isolate);
  bool prevent_default =
      Emit("certificate-error",
           WebContents::FromOrCreate(isolate, web_contents), request_url,
           net::ErrorToString(cert_error), ssl_info.cert, adapted_callback);
  
  if (!prevent_default)
    adapted_callback.Run(content::CERTIFICATE_REQUEST_RESULT_TYPE_DENY);
}
base::OnceClosure App::SelectClientCertificate(