OSDN Git Service

kdeplasma-addons: use the package metadata to get the package name in qmlwallpapers...
authorIvailo Monev <xakepa10@gmail.com>
Tue, 8 Aug 2023 12:12:00 +0000 (15:12 +0300)
committerIvailo Monev <xakepa10@gmail.com>
Tue, 8 Aug 2023 12:12:00 +0000 (15:12 +0300)
much more reliable than chopping the path into pieces to figure out the
package name. also because KGlobal::dirs()->findDirs() returns paths with
trailing slash the previous method was returning empty string

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
kdeplasma-addons/wallpapers/qmlwallpapers/wallpapersmodel.cpp
kdeplasma-addons/wallpapers/qmlwallpapers/wallpapersqml.cpp

index ad7d98f..4a1d158 100644 (file)
@@ -83,7 +83,7 @@ QVariant WallpapersModel::data(const QModelIndex& index, int role) const
     Plasma::Package* p = m_packages[index.row()];
     switch (role) {
         case PackageNameRole:
-            return KUrl(p->path()).fileName(KUrl::LeaveTrailingSlash);
+            return p->metadata().pluginName();
         case Qt::DisplayRole:
             return p->metadata().name();
         case Qt::ToolTipRole:
index 2b2dbcc..e0116ed 100644 (file)
@@ -173,7 +173,7 @@ QWidget* WallpaperQml::createConfigurationInterface(QWidget* parent)
     v.m_view->setItemDelegate(new BackgroundDelegate(v.m_view));
     if (m_package) {
         v.m_view->setCurrentIndex(m->indexForPackagePath(m_package->path()));
-        m_packageName = KUrl(m_package->path()).fileName(KUrl::LeaveTrailingSlash);
+        m_packageName = m_package->metadata().pluginName();
     }
     v.m_color->setColor(m_scene->backgroundBrush().color());