wire up primary font load timings

This CL wires up the load timings of a web font into the text LCP
record as the LCP breakdown timings of that text element.
When a text node is painted, it is enqueued as an LCP candidate.
At this place We check if the applied fonts of the text node contains
the primary font of the fallback font list.
If it does, it means the primary font is applied. Then if the primary
font is a web font, we retrieve the load timings of the web font and
pass them to the text record.
The load timings of the web font is set to a newly added member field
of the CustomFontData object when the resource fetching finish is
notified to the ResourceClient RemoteFontFaceSource object.

Bug: 40276574
Change-Id: Ic13b9d882a97ce0b5101a3cf4693ca1ce2b5ceac
diff --git a/largest-contentful-paint/resources/Lora-VariableFont_wght.ttf b/largest-contentful-paint/resources/Lora-VariableFont_wght.ttf
new file mode 100644
index 0000000..72b97d5
--- /dev/null
+++ b/largest-contentful-paint/resources/Lora-VariableFont_wght.ttf
Binary files differ
diff --git a/largest-contentful-paint/resources/NotoSansArabic-Thin.ttf b/largest-contentful-paint/resources/NotoSansArabic-Thin.ttf
new file mode 100644
index 0000000..859f92b
--- /dev/null
+++ b/largest-contentful-paint/resources/NotoSansArabic-Thin.ttf
Binary files differ
diff --git a/largest-contentful-paint/resources/NotoSansJP-Thin.woff2 b/largest-contentful-paint/resources/NotoSansJP-Thin.woff2
new file mode 100644
index 0000000..325c8fb
--- /dev/null
+++ b/largest-contentful-paint/resources/NotoSansJP-Thin.woff2
Binary files differ
diff --git a/largest-contentful-paint/resources/web-font.css b/largest-contentful-paint/resources/web-font.css
new file mode 100644
index 0000000..65a2b73
--- /dev/null
+++ b/largest-contentful-paint/resources/web-font.css
@@ -0,0 +1,40 @@
+.mixed-text {
+  font-family: "Noto Sans Arabic ", "Noto Sans Japanese"
+}
+
+@font-face {
+  font-family: "Lora11";
+  src:
+    url("Lora-VariableFont_wght.ttf");
+  font-display: block;
+}
+
+@font-face {
+  font-family: "Noto Sans Japanese";
+  src:
+    url("NotoSansJP-Thin.woff2") format('woff2');
+
+  unicode-range: U+4e00 - U+9faf;
+  font-display: block;
+  }
+
+  @font-face {
+    font-family: "Noto Sans Arabic";
+    src:
+      url("NotoSansArabic-Thin.ttf");
+    unicode-range: U+0600 – U+06FF;
+    font-display: block;
+}
+
+p {
+  font-family: 'Lora11';
+  /* Default font for the paragraph */
+}
+
+em {
+  font-family: 'Noto Sans Arabic';
+}
+
+b {
+  font-family: 'Noto Sans Japanese';
+}
diff --git a/largest-contentful-paint/resources/web-font2.css b/largest-contentful-paint/resources/web-font2.css
new file mode 100644
index 0000000..1eff163
--- /dev/null
+++ b/largest-contentful-paint/resources/web-font2.css
@@ -0,0 +1,12 @@
+.mixed-text {
+  font-family: "Noto Sans Japanese"
+}
+
+
+@font-face {
+  font-family: "Noto Sans Japanese";
+  src:
+    url("NotoSansJP-Thin.woff2") format('woff2');
+
+  unicode-range: U+4e00 - U+9faf;
+}
\ No newline at end of file
diff --git a/largest-contentful-paint/web-font-multiple-fonts.tentative.html b/largest-contentful-paint/web-font-multiple-fonts.tentative.html
new file mode 100644
index 0000000..93dcb8c
--- /dev/null
+++ b/largest-contentful-paint/web-font-multiple-fonts.tentative.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<meta charset="utf-8" />
+
+<head>
+  <link rel="stylesheet" href="resources/web-font.css">
+</head>
+<!-- <p class="mixed-text">This is some English text 癃礸痢 ðĶŒ Ë ولما كانت</p> -->
+
+<p>Welcome to my website! I love the <em>creative</em> freedom that <b>web fonts</b> offer.</p>
\ No newline at end of file