| Index: Source/platform/fonts/harfbuzz/FontPlatformDataHarfBuzz.h
|
| diff --git a/Source/platform/fonts/harfbuzz/FontPlatformDataHarfBuzz.h b/Source/platform/fonts/harfbuzz/FontPlatformDataHarfBuzz.h
|
| index 0753a8b79f7ad4531c0f7bab076c963a63e2c99c..59c3c07ff5ee7e879d9f69b2ed80dbbf478174aa 100644
|
| --- a/Source/platform/fonts/harfbuzz/FontPlatformDataHarfBuzz.h
|
| +++ b/Source/platform/fonts/harfbuzz/FontPlatformDataHarfBuzz.h
|
| @@ -51,11 +51,6 @@ namespace WebCore {
|
| class GraphicsContext;
|
| class HarfBuzzFace;
|
|
|
| -// -----------------------------------------------------------------------------
|
| -// FontPlatformData is the handle which WebKit has on a specific face. A face
|
| -// is the tuple of (font, size, ...etc). Here we are just wrapping a Skia
|
| -// SkTypeface pointer and dealing with the reference counting etc.
|
| -// -----------------------------------------------------------------------------
|
| class PLATFORM_EXPORT FontPlatformData {
|
| public:
|
| // Used for deleted values in the font cache's hash tables. The hash table
|
| @@ -67,32 +62,18 @@ public:
|
| FontPlatformData();
|
| FontPlatformData(float textSize, bool syntheticBold, bool syntheticItalic);
|
| FontPlatformData(const FontPlatformData&);
|
| - FontPlatformData(PassRefPtr<SkTypeface>, const char* name, float textSize, bool syntheticBold, bool syntheticItalic, FontOrientation = Horizontal, bool subpixelTextPosition = FontDescription::subpixelPositioning());
|
| + FontPlatformData(PassRefPtr<SkTypeface>, const char* name, float textSize, bool syntheticBold, bool syntheticItalic, FontOrientation = Horizontal, bool subpixelTextPosition = defaultUseSubpixelPositioning());
|
| FontPlatformData(const FontPlatformData& src, float textSize);
|
| ~FontPlatformData();
|
|
|
| String fontFamilyName() const;
|
| -
|
| - // -------------------------------------------------------------------------
|
| - // Return true iff this font is monospaced (i.e. every glyph has an equal x
|
| - // advance)
|
| - // -------------------------------------------------------------------------
|
| + float size() const { return m_textSize; }
|
| bool isFixedPitch() const;
|
|
|
| - // -------------------------------------------------------------------------
|
| - // Setup a Skia painting context to use this font.
|
| - // -------------------------------------------------------------------------
|
| - void setupPaint(SkPaint*, GraphicsContext* = 0) const;
|
| -
|
| - // -------------------------------------------------------------------------
|
| - // Return Skia's unique id for this font. This encodes both the style and
|
| - // the font's file name so refers to a single face.
|
| - // -------------------------------------------------------------------------
|
| - SkFontID uniqueID() const;
|
| SkTypeface* typeface() const { return m_typeface.get(); }
|
| -
|
| + HarfBuzzFace* harfBuzzFace() const;
|
| + SkFontID uniqueID() const;
|
| unsigned hash() const;
|
| - float size() const { return m_textSize; }
|
|
|
| FontOrientation orientation() const { return m_orientation; }
|
| void setOrientation(FontOrientation orientation) { m_orientation = orientation; }
|
| @@ -111,26 +92,31 @@ public:
|
| String description() const;
|
| #endif
|
|
|
| - HarfBuzzFace* harfBuzzFace() const;
|
| -
|
| // The returned styles are all actual styles without FontRenderStyle::NoPreference.
|
| const FontRenderStyle& fontRenderStyle() const { return m_style; }
|
| + void setupPaint(SkPaint*, GraphicsContext* = 0) const;
|
|
|
| - // -------------------------------------------------------------------------
|
| - // Global font preferences...
|
| -
|
| +#if OS(WIN)
|
| + int paintTextFlags() const { return m_paintTextFlags; }
|
| +#else
|
| static void setHinting(SkPaint::Hinting);
|
| static void setAutoHint(bool);
|
| static void setUseBitmaps(bool);
|
| static void setAntiAlias(bool);
|
| static void setSubpixelRendering(bool);
|
| +#endif
|
|
|
| private:
|
| + bool static defaultUseSubpixelPositioning();
|
| +#if !OS(WIN)
|
| void getRenderStyleForStrike(const char*, int);
|
| void querySystemForRenderStyle(bool useSkiaSubpixelPositioning);
|
| +#endif
|
|
|
| RefPtr<SkTypeface> m_typeface;
|
| +#if !OS(WIN)
|
| CString m_family;
|
| +#endif
|
| float m_textSize;
|
| bool m_syntheticBold;
|
| bool m_syntheticItalic;
|
| @@ -138,6 +124,10 @@ private:
|
| FontRenderStyle m_style;
|
| mutable RefPtr<HarfBuzzFace> m_harfBuzzFace;
|
| bool m_isHashTableDeletedValue;
|
| +#if OS(WIN)
|
| + int m_paintTextFlags;
|
| + bool m_useSubpixelPositioning;
|
| +#endif
|
| };
|
|
|
| } // namespace WebCore
|
|
|