Fallback to the original application font handling
When Qt is built for 10.8 but then used on a machine before 10.8 then it was not falling back correctly when an application font was added. Change-Id: I0f05226cdbcfa36621bb1b3aa2f2cd60e714dfdf Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
This commit is contained in:
parent
2cfca47d56
commit
b1bd4021f3
@ -517,8 +517,9 @@ QStringList QCoreTextFontDatabase::addApplicationFont(const QByteArray &fontData
|
||||
CFRelease(font);
|
||||
return families;
|
||||
}
|
||||
} else {
|
||||
#else
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
ATSFontContainerRef fontContainer;
|
||||
OSStatus e;
|
||||
|
||||
@ -557,10 +558,7 @@ QStringList QCoreTextFontDatabase::addApplicationFont(const QByteArray &fontData
|
||||
m_applicationFonts.append(fontContainer);
|
||||
return families;
|
||||
}
|
||||
#endif
|
||||
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_8
|
||||
}
|
||||
#endif
|
||||
|
||||
return QStringList();
|
||||
}
|
||||
@ -600,13 +598,14 @@ void QCoreTextFontDatabase::removeApplicationFonts()
|
||||
for (int i = 0; i < m_applicationURLFonts.count(); ++i)
|
||||
CTFontManagerUnregisterFontsForURL(m_applicationURLFonts[i], kCTFontManagerScopeProcess, &error);
|
||||
m_applicationURLFonts.clear();
|
||||
}
|
||||
#else
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
for (int i = 0; i < m_applicationFonts.count(); ++i)
|
||||
ATSFontDeactivate(m_applicationFonts[i], 0, kATSOptionFlagsDoNotNotify);
|
||||
m_applicationFonts.clear();
|
||||
ATSFontNotify(kATSFontNotifyActionFontsChanged, 0);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -82,9 +82,8 @@ private:
|
||||
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_8
|
||||
QVector<QCFType<CGFontRef> > m_applicationGraphicsFonts;
|
||||
QVector<QCFType<CFURLRef> > m_applicationURLFonts;
|
||||
#else
|
||||
QVector<ATSFontContainerRef> m_applicationFonts;
|
||||
#endif
|
||||
QVector<ATSFontContainerRef> m_applicationFonts;
|
||||
#endif
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user