Commit c2d1a887 authored by Bas Schouten's avatar Bas Schouten
Browse files

Bug 702851: Move mScaledFont into gfxFont superclass. r=jdaggett

parent 2c617467
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -124,7 +124,6 @@ gfxDWriteFont::gfxDWriteFont(gfxFontEntry *aFontEntry,
                             AntialiasOption anAAOption)
    : gfxFont(aFontEntry, aFontStyle, anAAOption)
    , mCairoFontFace(nsnull)
    , mCairoScaledFont(nsnull)
    , mMetrics(nsnull)
    , mNeedsOblique(false)
    , mNeedsBold(aNeedsBold)
@@ -170,8 +169,8 @@ gfxDWriteFont::~gfxDWriteFont()
    if (mCairoFontFace) {
        cairo_font_face_destroy(mCairoFontFace);
    }
    if (mCairoScaledFont) {
        cairo_scaled_font_destroy(mCairoScaledFont);
    if (mScaledFont) {
        cairo_scaled_font_destroy(mScaledFont);
    }
    delete mMetrics;
}
@@ -571,7 +570,7 @@ gfxDWriteFont::CairoFontFace()
cairo_scaled_font_t *
gfxDWriteFont::CairoScaledFont()
{
    if (!mCairoScaledFont) {
    if (!mScaledFont) {
        cairo_matrix_t sizeMatrix;
        cairo_matrix_t identityMatrix;

@@ -598,27 +597,27 @@ gfxDWriteFont::CairoScaledFont()
                GetCairoAntialiasOption(mAntialiasOption));
        }

        mCairoScaledFont = cairo_scaled_font_create(CairoFontFace(),
        mScaledFont = cairo_scaled_font_create(CairoFontFace(),
                                                    &sizeMatrix,
                                                    &identityMatrix,
                                                    fontOptions);
        cairo_font_options_destroy(fontOptions);

        cairo_dwrite_scaled_font_allow_manual_show_glyphs(mCairoScaledFont,
        cairo_dwrite_scaled_font_allow_manual_show_glyphs(mScaledFont,
                                                          mAllowManualShowGlyphs);

        gfxDWriteFontEntry *fe =
            static_cast<gfxDWriteFontEntry*>(mFontEntry.get());
        cairo_dwrite_scaled_font_set_force_GDI_classic(mCairoScaledFont,
        cairo_dwrite_scaled_font_set_force_GDI_classic(mScaledFont,
                                                       GetForceGDIClassic());
    }

    NS_ASSERTION(mAdjustedSize == 0.0 ||
                 cairo_scaled_font_status(mCairoScaledFont) 
                 cairo_scaled_font_status(mScaledFont) 
                   == CAIRO_STATUS_SUCCESS,
                 "Failed to make scaled font");

    return mCairoScaledFont;
    return mScaledFont;
}

gfxFont::RunMetrics
+0 −1
Original line number Diff line number Diff line
@@ -114,7 +114,6 @@ protected:

    nsRefPtr<IDWriteFontFace> mFontFace;
    cairo_font_face_t *mCairoFontFace;
    cairo_scaled_font_t *mCairoScaledFont;

    gfxFont::Metrics          *mMetrics;

+1 −2
Original line number Diff line number Diff line
@@ -47,8 +47,7 @@
gfxFT2FontBase::gfxFT2FontBase(cairo_scaled_font_t *aScaledFont,
                               gfxFontEntry *aFontEntry,
                               const gfxFontStyle *aFontStyle)
    : gfxFont(aFontEntry, aFontStyle),
      mScaledFont(aScaledFont),
    : gfxFont(aFontEntry, aFontStyle, kAntialiasDefault, aScaledFont),
      mSpaceGlyph(0),
      mHasMetrics(false)
{
+0 −1
Original line number Diff line number Diff line
@@ -69,7 +69,6 @@ public:
    virtual bool SetupCairoFont(gfxContext *aContext);

protected:
    cairo_scaled_font_t *mScaledFont;
    PRUint32 mSpaceGlyph;
    bool mHasMetrics;
    Metrics mMetrics;
+2 −1
Original line number Diff line number Diff line
@@ -1068,7 +1068,8 @@ gfxFont::RunMetrics::CombineWith(const RunMetrics& aOther, bool aOtherIsOnLeft)
}

gfxFont::gfxFont(gfxFontEntry *aFontEntry, const gfxFontStyle *aFontStyle,
                 AntialiasOption anAAOption) :
                 AntialiasOption anAAOption, cairo_scaled_font_t *aScaledFont) :
    mScaledFont(aScaledFont),
    mFontEntry(aFontEntry), mIsValid(true),
    mApplySyntheticBold(false),
    mStyle(*aFontStyle),
Loading