Add UKM metrics for UpdateLayers and ProxyCommit

The begin main frame UKM system captures all major tasks in
ProxyMain::BeginMainFrame except for LayerTreeHost::UpdateLayers
and the ProxyMain commit of the layer tree to the impl thread.

This patch adds those missing UKM metrics. The aggregator is
modified to only create UMA counters for some metrics because
UpdateLayers has it's own UMA metrics with additional context that
we can't replicate in a clean way.

[email protected],[email protected]

Bug: 869966
Change-Id: If9d67f3d984dd6fc9d270e71ac904c1bf1db6506
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1530004
Commit-Queue: Stephen Chenney <[email protected]>
Reviewed-by: vmpstr <[email protected]>
Reviewed-by: Chris Harrelson <[email protected]>
Reviewed-by: Antoine Labour <[email protected]>
Reviewed-by: Robert Kaplow <[email protected]>
Auto-Submit: Stephen Chenney <[email protected]>
Cr-Commit-Position: refs/heads/master@{#646891}
diff --git a/content/renderer/render_widget.h b/content/renderer/render_widget.h
index dad344a..98957193 100644
--- a/content/renderer/render_widget.h
+++ b/content/renderer/render_widget.h
@@ -341,10 +341,13 @@
   void RequestNewLayerTreeFrameSink(
       LayerTreeFrameSinkCallback callback) override;
   void DidCommitAndDrawCompositorFrame() override;
+  void WillCommitCompositorFrame() override;
   void DidCommitCompositorFrame() override;
   void DidCompletePageScaleAnimation() override;
   void RecordStartOfFrameMetrics() override;
   void RecordEndOfFrameMetrics(base::TimeTicks frame_begin_time) override;
+  void BeginUpdateLayers() override;
+  void EndUpdateLayers() override;
   void UpdateVisualState() override;
   void WillBeginCompositorFrame() override;