You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
2.4 KiB

# --- SDE-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: package/.../kdelibs/kdelibs-4.6.3-kde4-xdg-menu-prefix.patch
# Copyright (C) 2011 The OpenSDE Project
#
# More information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# --- SDE-COPYRIGHT-NOTE-END ---
Description: Use 'kde4-' as XDG_MENU_PREFIX
With this patch the 'applications.menu' file gets installed as
'kde4-applications.menu' avoiding a shared file issue with other
desktop environments which use the same file name.
Besides that this patch enforces the 'kde4-' prefix unless the
XDG_MENU_PREFIX is set.
--- kdelibs-4.6.3/kded/CMakeLists.txt 2011-04-01 15:55:50.000000000 +0200
+++ kdelibs-4.6.3/kded/CMakeLists.txt 2011-05-19 11:27:57.932002344 +0200
@@ -74,7 +74,7 @@
if (WIN32)
install( FILES applications.menu DESTINATION ${SHARE_INSTALL_PREFIX}/xdg/menus )
else (WIN32)
-install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus )
+install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus RENAME kde4-applications.menu )
endif (WIN32)
install( FILES kdedmodule.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
install( FILES kded.upd DESTINATION ${DATA_INSTALL_DIR}/kconf_update )
--- kdelibs-4.6.3/kded/vfolder_menu.cpp 2011-04-01 15:55:50.000000000 +0200
+++ kdelibs-4.6.3/kded/vfolder_menu.cpp 2011-05-19 11:30:49.960002344 +0200
@@ -770,8 +770,10 @@
QString result;
QString xdgMenuPrefix = QString::fromLocal8Bit(qgetenv("XDG_MENU_PREFIX"));
- if (!xdgMenuPrefix.isEmpty())
- {
+ // enforce kde4- prefix unless XDG_MENU_PREFIX is set
+ if (xdgMenuPrefix.isEmpty())
+ xdgMenuPrefix = QString("kde4-");
+
QFileInfo fileInfo(fileName);
QString fileNameOnly = fileInfo.fileName();
@@ -781,7 +783,6 @@
QString baseName = QDir::cleanPath(m_docInfo.baseDir +
fileInfo.path() + '/' + fileNameOnly);
result = KStandardDirs::locate("xdgconf-menu", baseName);
- }
if (result.isEmpty())
{