Window Placement: Extend transient activation after permission prompt.

Notify the renderer of user activation when the permission is granted:
Override UserMadePermissionDecision to call NotifyUserActivation.
Add RenderFrameHost[Impl] plumbing for the LocalFrame signal.
Add UserActivationNotificationType plumbing for LocalFrame interface.
Add a basic browser test.

Bug: 1083357
Test: Scripts can requestFullscreen({screen: (await getScreens()[0])})
Change-Id: Ia72b7f003b7807ed13de6e76612d107f8050fc91
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2426884
Commit-Queue: Michael Wasserman <[email protected]>
Reviewed-by: Mustaq Ahmed <[email protected]>
Reviewed-by: Balazs Engedy <[email protected]>
Reviewed-by: John Abd-El-Malek <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Cr-Commit-Position: refs/heads/master@{#812446}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index c8a6d71..2975c655 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1814,6 +1814,8 @@
     "wake_lock/wake_lock_permission_context.h",
     "web_data_service_factory.cc",
     "web_data_service_factory.h",
+    "window_placement/window_placement_permission_context.cc",
+    "window_placement/window_placement_permission_context.h",
   ]
 
   configs += [