From 3eebadc1734463afa469dcd08eab8c5d2557dec6 Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Fri, 28 Sep 2018 11:40:10 +0200 Subject: Modernize the "mimetype" feature Change-Id: I9b67c2cbc0891a38ece18d521c86fbc7344dce7a Reviewed-by: Edward Welbourne Reviewed-by: Oswald Buddenhagen --- src/corelib/mimetypes/qmimeprovider.cpp | 4 ---- 1 file changed, 4 deletions(-) (limited to 'src/corelib/mimetypes/qmimeprovider.cpp') diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index 90a16886a9..c4a8458243 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -40,8 +40,6 @@ #include "qmimeprovider_p.h" -#ifndef QT_NO_MIMETYPE - #include "qmimetypeparser_p.h" #include #include "qmimemagicrulematcher_p.h" @@ -757,5 +755,3 @@ void QMimeXMLProvider::addMagicMatcher(const QMimeMagicRuleMatcher &matcher) } QT_END_NAMESPACE - -#endif // QT_NO_MIMETYPE -- cgit v1.2.3 From e3c84b6da1cbef7ed779ba5eec6ae3ed8e4e5d59 Mon Sep 17 00:00:00 2001 From: Gary Wang Date: Tue, 23 Oct 2018 14:17:29 +0800 Subject: QMimeType: Use default key as fallback for comment() property When QMimeProvider parses the shared mime database xml files, it will read the element for mime comment and treat the `xml:lang` attribute as locale language string. When no `xml:lang` attr is provided, QMimeProvider will read the value and treat it as a en_US locale string as the default key. When we call QMimeType::comment(), it will try to get the locale comment string with the default language (QLocale().name()), once it can't find a matched result, it should return the default key (which QMimeProvider set it as en_US locale before) as fallback. Task-number: QTBUG-71314 Change-Id: I444f8159d6f19dfef6338cd79312f608d8f13394 Reviewed-by: David Faure --- src/corelib/mimetypes/qmimeprovider.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/corelib/mimetypes/qmimeprovider.cpp') diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index c4a8458243..aac51184a4 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -502,7 +502,7 @@ void QMimeBinaryProvider::loadMimeTypePrivate(QMimeTypePrivate &data) QString lang = xml.attributes().value(QLatin1String("xml:lang")).toString(); const QString text = xml.readElementText(); if (lang.isEmpty()) { - lang = QLatin1String("en_US"); + lang = QLatin1String("default"); // no locale attribute provided, treat it as default. } data.localeComments.insert(lang, text); continue; // we called readElementText, so we're at the EndElement already. -- cgit v1.2.3 From 3464e1e5c7b5b01ae13c99e3529dd02af1d36958 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Wed, 5 Dec 2018 19:48:05 +0000 Subject: Add a few qAsConst() to range-for to prevent detachments places indicated by clazy As a drive-by, fixed minor styling issues in the affected lines. Change-Id: I88d3fc0c8573cde0e61f19a18dd9ea697ee40c34 Reviewed-by: Thiago Macieira Reviewed-by: Luca Beldi Reviewed-by: Friedemann Kleint --- src/corelib/mimetypes/qmimeprovider.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/corelib/mimetypes/qmimeprovider.cpp') diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index aac51184a4..d5b8825972 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -445,10 +445,10 @@ void QMimeBinaryProvider::addAllMimeTypes(QList &result) loadMimeTypeList(); if (result.isEmpty()) { result.reserve(m_mimetypeNames.count()); - for (const QString &name : m_mimetypeNames) + for (const QString &name : qAsConst(m_mimetypeNames)) result.append(mimeTypeForNameUnchecked(name)); } else { - for (const QString &name : m_mimetypeNames) + for (const QString &name : qAsConst(m_mimetypeNames)) if (std::find_if(result.constBegin(), result.constEnd(), [name](const QMimeType &mime) -> bool { return mime.name() == name; }) == result.constEnd()) result.append(mimeTypeForNameUnchecked(name)); -- cgit v1.2.3 From fa1b8442b8e6d01d0352a062a6aa8df6956f77f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Nowacki?= Date: Thu, 28 Feb 2019 14:06:47 +0100 Subject: Fix warnings when compiling with QT_NO_XMLSTREAM MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some of function arguments were unused. Change-Id: I29e8e4acbed87836044cac4f0b7ac59168181f5a Reviewed-by: Paul Olav Tvete Reviewed-by: MÃ¥rten Nordheim --- src/corelib/mimetypes/qmimeprovider.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/corelib/mimetypes/qmimeprovider.cpp') diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index d5b8825972..5e1447aaa9 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -458,6 +458,7 @@ void QMimeBinaryProvider::addAllMimeTypes(QList &result) void QMimeBinaryProvider::loadMimeTypePrivate(QMimeTypePrivate &data) { #ifdef QT_NO_XMLSTREAMREADER + Q_UNUSED(data); qWarning("Cannot load mime type since QXmlStreamReader is not available."); return; #else -- cgit v1.2.3 From 3449042f5b6a112c9984ff49ee8e5fbdea597bae Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Fri, 22 Mar 2019 15:53:34 -0700 Subject: QMimeDatabase: allow building without our internal copy Saves 234kB of read-only data (when compressed with zstd) in QtCore, plus one load-time execution. With Zlib, the size was 315 kB. [ChangeLog][QtCore][QMimeDatabase] Added configure option -no-mimetype-database that tells Qt not to bundle its own copy of the XDG MIME database. If this option is passed, QMimeDatabase will only work if there's a system copy in $XDG_DATA_DIRS/mime. This option is useful for Linux distributions that ensure the data is always present. Change-Id: I1004b4b819774c4c9296fffd158e69c490e88fb6 Reviewed-by: David Faure --- src/corelib/mimetypes/qmimeprovider.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/corelib/mimetypes/qmimeprovider.cpp') diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index d5b8825972..37c8e3b157 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -54,7 +54,9 @@ static void initResources() { +#if QT_CONFIG(mimetype_database) Q_INIT_RESOURCE(mimetypes); +#endif } QT_BEGIN_NAMESPACE -- cgit v1.2.3