Blob Blame History Raw
diff -U5 -r kdebase-workspace-4.3.75svn1048496/plasma/desktop/applets/kickoff/core/models.cpp kdebase-workspace-4.3.75svn1048496.kio_sysinfo/plasma/desktop/applets/kickoff/core/models.cpp
--- kdebase-workspace-4.3.75svn1048496/plasma/desktop/applets/kickoff/core/models.cpp	2009-10-15 12:33:38.000000000 -0400
+++ kdebase-workspace-4.3.75svn1048496.kio_sysinfo/plasma/desktop/applets/kickoff/core/models.cpp	2009-11-21 15:24:44.000000000 -0500
@@ -176,10 +176,12 @@
 QStringList Kickoff::systemApplicationList()
 {
     KConfigGroup appsGroup = componentData().config()->group("SystemApplications");
     QStringList apps;
     apps << "systemsettings";
+    if (QFile::exists("/usr/share/kde4/services/sysinfo.protocol"))  
+        apps << "/usr/share/kde4/services/sysinfo.protocol";
     apps = appsGroup.readEntry("DesktopFiles", apps);
     return apps;
 }
 
 #if 0
diff -U5 -r kdebase-workspace-4.3.75svn1048496/plasma/desktop/applets/kickoff/core/systemmodel.cpp kdebase-workspace-4.3.75svn1048496.kio_sysinfo/plasma/desktop/applets/kickoff/core/systemmodel.cpp
--- kdebase-workspace-4.3.75svn1048496/plasma/desktop/applets/kickoff/core/systemmodel.cpp	2009-11-13 05:57:47.000000000 -0500
+++ kdebase-workspace-4.3.75svn1048496.kio_sysinfo/plasma/desktop/applets/kickoff/core/systemmodel.cpp	2009-11-21 15:25:04.000000000 -0500
@@ -244,21 +244,36 @@
             }
         }
 
         KService::Ptr service = d->appsList[index.row()];
 
-        switch (role) {
-        case Qt::DisplayRole:
-            return service->name();
-        case Qt::DecorationRole:
-            return KIcon(service->icon());
-        case SubTitleRole:
-            return service->genericName();
-        case UrlRole:
-            return service->entryPath();
-        default:
-            return QVariant();
+        if (service->name()=="sysinfo") {  
+            switch(role) {  
+            case Qt::DisplayRole:  
+                return i18n("System Information");  
+            case Qt::DecorationRole:  
+                return KIcon("hwinfo");  
+            case SubTitleRole:  
+                return "sysinfo:/";  
+            case UrlRole:  
+                return "sysinfo:/";  
+            default:  
+                return QVariant();  
+            }  
+        } else {  
+            switch (role) {
+            case Qt::DisplayRole:
+                return service->name();
+            case Qt::DecorationRole:
+                return KIcon(service->icon());
+            case SubTitleRole:
+                return service->genericName();
+            case UrlRole:
+                return service->entryPath();
+            default:
+                return QVariant();
+            }
         }
     }
 
     if (role == UrlRole && !d->placesModel->isHidden(mapToSource(index))) {
         QModelIndex parent = index.parent();