Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: Source/platform/fonts/FontFallbackList.cpp

Issue 1314843009: Add DocumentTiming metrics for "time to first text paint" (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Paint time metrics Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/platform/fonts/FontFallbackList.cpp
diff --git a/Source/platform/fonts/FontFallbackList.cpp b/Source/platform/fonts/FontFallbackList.cpp
index d8eb999702eb9a4d9966a73bb086c4fe1a0bad31..b08441d13815cfedfded42bc0000d0dc5575ba34 100644
--- a/Source/platform/fonts/FontFallbackList.cpp
+++ b/Source/platform/fonts/FontFallbackList.cpp
@@ -46,6 +46,7 @@ FontFallbackList::FontFallbackList()
, m_familyIndex(0)
, m_generation(FontCache::fontCache()->generation())
, m_hasLoadingFallback(false)
+ , m_hasCustomFont(false)
{
}
@@ -58,6 +59,7 @@ void FontFallbackList::invalidate(PassRefPtrWillBeRawPtr<FontSelector> fontSelec
m_cachedPrimarySimpleFontData = 0;
m_familyIndex = 0;
m_hasLoadingFallback = false;
+ m_hasCustomFont = false;
m_fontSelector = fontSelector;
m_fontSelectorVersion = m_fontSelector ? m_fontSelector->version() : 0;
m_generation = FontCache::fontCache()->generation();
@@ -90,14 +92,15 @@ bool FontFallbackList::loadingCustomFonts() const
bool FontFallbackList::shouldSkipDrawing() const
{
- if (!m_hasLoadingFallback)
- return false;
-
- unsigned numFonts = m_fontList.size();
- for (unsigned i = 0; i < numFonts; ++i) {
- if (m_fontList[i]->shouldSkipDrawing())
- return true;
+ if (m_hasLoadingFallback) {
+ unsigned numFonts = m_fontList.size();
+ for (unsigned i = 0; i < numFonts; ++i) {
+ if (m_fontList[i]->shouldSkipDrawing())
+ return true;
+ }
}
+ if (m_fontSelector)
+ m_fontSelector->reportFirstNonBlankText(m_hasCustomFont);
return false;
}
@@ -210,6 +213,8 @@ const FontData* FontFallbackList::fontDataAt(const FontDescription& fontDescript
m_fontList.append(result);
if (result->isLoadingFallback())
m_hasLoadingFallback = true;
+ if (result->isCustomFont())
+ m_hasCustomFont = true;
}
return result.get();
}

Powered by Google App Engine
This is Rietveld 408576698