diff options
Diffstat (limited to 'src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h')
-rw-r--r-- | src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h b/src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h index 07938ae..14ebbe4 100644 --- a/src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h +++ b/src/3rdparty/webkit/WebCore/platform/graphics/FontFallbackList.h @@ -31,6 +31,7 @@ namespace WebCore { class Font; +class GlyphPageTreeNode; class GraphicsContext; class IntRect; class FontDescription; @@ -57,7 +58,15 @@ public: private: FontFallbackList(); - const FontData* primaryFont(const Font* f) const { return fontDataAt(f, 0); } + const SimpleFontData* primarySimpleFontData(const Font* f) + { + ASSERT(isMainThread()); + if (!m_cachedPrimarySimpleFontData) + m_cachedPrimarySimpleFontData = primaryFontData(f)->fontDataForCharacter(' '); + return m_cachedPrimarySimpleFontData; + } + + const FontData* primaryFontData(const Font* f) const { return fontDataAt(f, 0); } const FontData* fontDataAt(const Font*, unsigned index) const; const FontData* fontDataForCharacters(const Font*, const UChar*, int length) const; @@ -66,6 +75,9 @@ private: void releaseFontData(); mutable Vector<pair<const FontData*, bool>, 1> m_fontList; + mutable HashMap<int, GlyphPageTreeNode*> m_pages; + mutable GlyphPageTreeNode* m_pageZero; + mutable const SimpleFontData* m_cachedPrimarySimpleFontData; RefPtr<FontSelector> m_fontSelector; mutable int m_familyIndex; mutable Pitch m_pitch; |