Mimetypes v3: Re-add internal mime database

Qt Creator ships its own copy.
With this change, Options > Environment > MIME Types shows the basic
freedesktop types again.

Change-Id: I420d9d034e31622d5ec7f2492baef5c3f1d93df0
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
Eike Ziller
2022-02-24 11:47:07 +01:00
parent 53aa9daeba
commit 179f393f88
2 changed files with 15 additions and 4 deletions

View File

@@ -617,7 +617,8 @@ void MimeBinaryProvider::loadGenericIcon(MimeTypePrivate &data)
////
#if 0 //QT_CONFIG(mimetype_database)
#if 0
#if QT_CONFIG(mimetype_database)
static QString internalMimeFileName()
{
return QStringLiteral("<internal MIME data>");
@@ -670,6 +671,16 @@ MimeXMLProvider::MimeXMLProvider(MimeDatabasePrivate *db, InternalDatabaseEnum)
Q_UNREACHABLE();
}
#endif // QT_CONFIG(mimetype_database)
#endif
static const char internalMimeFileName[] = ":/utils/mimetypes/freedesktop.org.xml";
// for Qt Creator: internal database from resources
MimeXMLProvider::MimeXMLProvider(MimeDatabasePrivate *db, InternalDatabaseEnum)
: MimeProviderBase(db, internalMimeFileName)
{
load(internalMimeFileName);
}
MimeXMLProvider::MimeXMLProvider(MimeDatabasePrivate *db, const QString &directory)
: MimeProviderBase(db, directory)
@@ -690,8 +701,8 @@ bool MimeXMLProvider::isValid()
bool MimeXMLProvider::isInternalDatabase() const
{
#if 0 //QT_CONFIG(mimetype_database)
return m_directory == internalMimeFileName();
#if 1 //QT_CONFIG(mimetype_database)
return m_directory == internalMimeFileName;
#else
return false;
#endif

View File

@@ -139,7 +139,7 @@ class MimeXMLProvider : public MimeProviderBase
{
public:
enum InternalDatabaseEnum { InternalDatabase };
#if 0 // QT_CONFIG(mimetype_database)
#if 1 // QT_CONFIG(mimetype_database)
enum : bool { InternalDatabaseAvailable = true };
#else
enum : bool { InternalDatabaseAvailable = false };