From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Attard <samuel.r.attard@gmail.com>
Date: Tue, 17 Nov 2020 16:59:28 -0800
Subject: mas: use public APIs to determine if a font is a system font

CTFontDescriptorIsSystemUIFont is a private API, we're using an
_interesting_ technique in the MAS build to determine if the font is a
system font by checking if it's kCTFontPriorityAttribute is set to
system priority.

diff --git a/ui/gfx/platform_font_mac.mm b/ui/gfx/platform_font_mac.mm
index 8e5959d2197b16392890cc2675cea0b616b348e5..62ccb85f3c1fec1d2c32f78ee57694f5df3ef494 100644
--- a/ui/gfx/platform_font_mac.mm
+++ b/ui/gfx/platform_font_mac.mm
@@ -25,9 +25,11 @@
 
 using Weight = Font::Weight;
 
+#if !IS_MAS_BUILD()
 extern "C" {
 bool CTFontDescriptorIsSystemUIFont(CTFontDescriptorRef);
 }
+#endif
 
 namespace {
 
@@ -228,7 +230,13 @@ NSInteger ToNSFontManagerWeight(Weight weight) {
   // TODO(avi, etienneb): Figure out this font stuff.
   base::ScopedCFTypeRef<CTFontDescriptorRef> descriptor(
       CTFontCopyFontDescriptor(font));
+#if IS_MAS_BUILD()
+  CFNumberRef priority = (CFNumberRef)CTFontDescriptorCopyAttribute(descriptor.get(), (CFStringRef)kCTFontPriorityAttribute);
+  SInt64 v;
+  if (CFNumberGetValue(priority, kCFNumberSInt64Type, &v) && v == kCTFontPrioritySystem) {
+#else
   if (CTFontDescriptorIsSystemUIFont(descriptor.get())) {
+#endif
     // Assume it's the standard system font. The fact that this much is known is
     // enough.
     return PlatformFontMac::SystemFontType::kGeneral;
