diff options
-rw-r--r-- | autotests/kdesktopfiletest.cpp | 3 | ||||
-rw-r--r-- | src/core/kdesktopfile.cpp | 6 | ||||
-rw-r--r-- | src/core/kdesktopfile.h | 7 |
3 files changed, 16 insertions, 0 deletions
diff --git a/autotests/kdesktopfiletest.cpp b/autotests/kdesktopfiletest.cpp index 1a9c1c3e..a90faf3c 100644 --- a/autotests/kdesktopfiletest.cpp +++ b/autotests/kdesktopfiletest.cpp @@ -37,6 +37,7 @@ void KDesktopFileTest::testRead() "Type=Application\n" "Name=My Application\n" "Icon=foo\n" + "MimeType=text/plain;image/png;\n" "\n"; file.close(); QVERIFY(QFile::exists(fileName)); @@ -46,6 +47,8 @@ void KDesktopFileTest::testRead() QVERIFY(df.hasApplicationType()); QCOMPARE(df.readName(), QString::fromLatin1("My Application")); QCOMPARE(df.readIcon(), QString::fromLatin1("foo")); + QCOMPARE(df.readMimeTypes(), QStringList() << QString::fromLatin1("text/plain") + << QString::fromLatin1("image/png")); QVERIFY(!df.hasLinkType()); QCOMPARE(df.fileName(), QFileInfo(fileName).canonicalFilePath()); } diff --git a/src/core/kdesktopfile.cpp b/src/core/kdesktopfile.cpp index 254b59a6..49f37c36 100644 --- a/src/core/kdesktopfile.cpp +++ b/src/core/kdesktopfile.cpp @@ -237,6 +237,12 @@ QStringList KDesktopFile::readActions() const return d->desktopGroup.readXdgListEntry("Actions"); } +QStringList KDesktopFile::readMimeTypes() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readXdgListEntry("MimeType"); +} + KConfigGroup KDesktopFile::actionGroup(const QString &group) { return KConfigGroup(this, QLatin1String("Desktop Action ") + group); diff --git a/src/core/kdesktopfile.h b/src/core/kdesktopfile.h index 2190051d..f3b293fa 100644 --- a/src/core/kdesktopfile.h +++ b/src/core/kdesktopfile.h @@ -160,6 +160,13 @@ public: QStringList readActions() const; /** + * Returns a list of the "MimeType=" entries. + * @return the list of mime types + * @since 5.15 + */ + QStringList readMimeTypes() const; + + /** * Sets the desktop action group. * @param group the new action group */ |