diff --git a/kimgio/raw.cpp b/kimgio/raw.cpp index 86fc8700..082dc7ee 100644 --- a/kimgio/raw.cpp +++ b/kimgio/raw.cpp @@ -19,6 +19,7 @@ #include "raw.h" #include +#include #include #include @@ -170,8 +171,16 @@ QStringList RAWPlugin::keys() const QList RAWPlugin::mimeTypes() const { - static const QList list = QList() - << "image/x-dcraw"; + static QList list; + if (list.isEmpty()) { + foreach (const KMimeType::Ptr &mime, KMimeType::allMimeTypes()) { + // NOTE: RAW MIME types are sub-class of image/x-dcraw + if (mime->is(QString::fromLatin1("image/x-dcraw")) + && mime->name() != QLatin1String("image/x-dcraw")) { + list.append(mime->name().toLatin1()); + } + } + } return list; }