Index: ui/gfx/hud_font.cc |
diff --git a/ui/gfx/hud_font.cc b/ui/gfx/hud_font.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..37e5d6dbf7e4ab6d01eb35f38995cd3dee1b3835 |
--- /dev/null |
+++ b/ui/gfx/hud_font.cc |
@@ -0,0 +1,31 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "ui/gfx/hud_font.h" |
+ |
+#include "base/lazy_instance.h" |
+#include "third_party/skia/include/core/SkTypeface.h" |
+ |
+namespace ui { |
+ |
+namespace { |
+base::LazyInstance<skia::RefPtr<SkTypeface>> g_hud_typeface; |
+} // namespace |
+ |
+void SetHudTypeface(SkTypeface* typeface) { |
+ g_hud_typeface.Get() = skia::AdoptRef(typeface); |
+} |
+ |
+skia::RefPtr<SkTypeface> GetHudTypeface() { |
+#if !defined(OS_WIN) |
+ if (!g_hud_typeface.Get()) { |
+ // This will be set pre-sandbox on Windows. On other platforms, just make |
+ // something here. |
+ SetHudTypeface(SkTypeface::CreateFromName("monospace", SkTypeface::kBold)); |
+ } |
+#endif // OS_WIN |
+ return g_hud_typeface.Get(); |
+} |
+ |
+} // namespace ui |