Mojoify DidCommitProvisionalLoadParams [reland]

Reland information:
---
Patchset 1 contains the original (reverted) patch. It has been reverted,
because it landed together with:
https://chromium-review.googlesource.com/c/chromium/src/+/2533280

[Initial code review]:
https://chromium-review.googlesource.com/c/chromium/src/+/2529096

[Revert]:
https://chromium-review.googlesource.com/c/chromium/src/+/2542857
---

Turn the IPC struct:
FrameHostMsg_DidCommitProvisionalLoad_Params

Into a mojo struct
mojom::DidCommitProvisionalLoadParams

This is mostly straigforward, except:

1. The functions have been updated to correctly specify whether
   ownership over this struct is passed or not. Use one of "const T&" /
   "T*", "TPtr*".

2. Mojo checks the required params are populated. This forced me to
   update several unittests to construct the required params. Like the
   referrer or the navigation_token.

3. blink::mojom::Referrer is used instead of the old content::Referrer
   This required adding (temporarily) the conversion between both when
   needed.

[email protected]

Fixed: 1145888
Bug: 1145888
Change-Id: I5e4a271b362db295947dea51e926114684328e16
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2543347
Reviewed-by: Arthur Sonzogni <[email protected]>
Commit-Queue: Arthur Sonzogni <[email protected]>
Cr-Commit-Position: refs/heads/master@{#828161}
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 22851071..b02f52d 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -1062,9 +1062,8 @@
 
   void ShowDeferredContextMenu(const UntrustworthyContextMenuParams& params);
 
-  // Build DidCommitProvisionalLoad_Params based on the frame internal state.
-  std::unique_ptr<FrameHostMsg_DidCommitProvisionalLoad_Params>
-  MakeDidCommitProvisionalLoadParams(
+  // Build DidCommitProvisionalLoadParams based on the frame internal state.
+  mojom::DidCommitProvisionalLoadParamsPtr MakeDidCommitProvisionalLoadParams(
       blink::WebHistoryCommitType commit_type,
       ui::PageTransition transition,
       const base::Optional<base::UnguessableToken>& embedding_token);