Sophie

Sophie

distrib > Mandriva > cs4.0 > i586 > by-pkgid > fa9b6a46c8aad7f4f199c98596a0ec2a > files > 23

kdelibs-3.5.4-1.1.20060mlcs4.src.rpm

--- kdelibs-3.5.1/kio/kio/kservice.cpp.orig	2006-02-02 08:46:14.000000000 -0500
+++ kdelibs-3.5.1/kio/kio/kservice.cpp	2006-02-02 08:56:18.000000000 -0500
@@ -772,8 +772,14 @@
                                 QString *menuId, const QStringList *reservedMenuIds)
 {
    QString base = suggestedName;
+   QString typeMenu = KStandardDirs::menu_type_by_version();
    if (!showInMenu)
-     base.prepend("kde-");
+	{
+		if( typeMenu!="kde")
+			base.prepend("Mandrakelinux-.hidden-");
+		else
+			base.prepend("kde-");
+	}
 
    QString result;
    for(int i = 1; true; i++)
@@ -798,10 +804,19 @@
       }
       else
       {
-         QString file = result.mid(4); // Strip "kde-"
-         if (!locate("apps", ".hidden/"+file).isEmpty())
-            continue;
-      }
+			if( typeMenu=="kde")
+			{
+				QString file = result.mid(4); // Strip "kde-
+				if (!locate("apps", ".hidden/"+file).isEmpty())
+					continue;
+			}
+			else
+			{
+				QString file = result.mid(22); // Strip "Mandrakelinux...
+				if (!locate("xdgdata-apps", "Mandrakelinux/.hidden/"+file).isEmpty())
+					continue;
+			}
+		}
 
       break;
    }
@@ -814,8 +829,16 @@
    }
    else
    {
-       QString file = result.mid(4); // Strip "kde-"
-       return ::locateLocal("apps", ".hidden/"+file);
+		if( typeMenu=="kde")
+		{
+			QString file = result.mid(4); // Strip "kde-"
+			return ::locateLocal("apps", ".hidden/"+file);
+		}
+		else
+		{
+			QString file = result.mid(22); // Strip "kde-"
+			return ::locateLocal("xdgdata-apps", "Mandrakelinux/.hidden/"+file);
+		}
    }
 }