| Index: Source/core/css/CSSFontFaceSource.h
|
| diff --git a/Source/core/css/CSSFontFaceSource.h b/Source/core/css/CSSFontFaceSource.h
|
| index 21ebaebc71f4f79a63fee4e4b8e4ac7bb62add57..bab06303312acc9557756440ddb04cce5adf3e1a 100644
|
| --- a/Source/core/css/CSSFontFaceSource.h
|
| +++ b/Source/core/css/CSSFontFaceSource.h
|
| @@ -74,18 +74,26 @@ public:
|
| bool isLocalFontAvailable(const FontDescription&);
|
| void beginLoadIfNeeded();
|
|
|
| + // For UMA reporting
|
| + void paintRequested() { m_histograms.fallbackFontPainted(); }
|
| + bool hadBlankText() { return m_histograms.hadBlankText(); }
|
| +
|
| private:
|
| typedef HashMap<unsigned, RefPtr<SimpleFontData> > FontDataTable; // The hash key is composed of size synthetic styles.
|
|
|
| class FontLoadHistograms {
|
| public:
|
| - FontLoadHistograms() : m_loadStartTime(0) { }
|
| + FontLoadHistograms() : m_loadStartTime(0), m_fallbackPaintTime(0) { }
|
| void loadStarted();
|
| + void fallbackFontPainted();
|
| void recordLocalFont(bool loadSuccess);
|
| void recordRemoteFont(const FontResource*);
|
| + void recordFallbackTime(const FontResource*);
|
| + bool hadBlankText() { return m_fallbackPaintTime; }
|
| private:
|
| const char* histogramName(const FontResource*);
|
| double m_loadStartTime;
|
| + double m_fallbackPaintTime;
|
| };
|
|
|
| void pruneTable();
|
|
|