// Copyright 2014 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 "sky/engine/core/css/LocalFontFaceSource.h" #include "sky/engine/platform/fonts/FontCache.h" #include "sky/engine/platform/fonts/FontDescription.h" #include "sky/engine/platform/fonts/SimpleFontData.h" #include "sky/engine/public/platform/Platform.h" namespace blink { bool LocalFontFaceSource::isLocalFontAvailable(const FontDescription& fontDescription) { return FontCache::fontCache()->isPlatformFontAvailable(fontDescription, m_fontName); } PassRefPtr LocalFontFaceSource::createFontData(const FontDescription& fontDescription) { // We don't want to check alternate font family names here, so pass true as the checkingAlternateName parameter. RefPtr fontData = FontCache::fontCache()->getFontData(fontDescription, m_fontName, true); m_histograms.record(fontData); return fontData.release(); } void LocalFontFaceSource::LocalFontHistograms::record(bool loadSuccess) { if (m_reported) return; m_reported = true; blink::Platform::current()->histogramEnumeration("WebFont.LocalFontUsed", loadSuccess ? 1 : 0, 2); } } // namespace blink