--- 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); + } } }