summaryrefslogtreecommitdiffstats
path: root/redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch')
-rw-r--r--redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch150
1 files changed, 150 insertions, 0 deletions
diff --git a/redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch b/redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch
new file mode 100644
index 000000000..28fe715b4
--- /dev/null
+++ b/redhat/tdelibs/tdelibs-3.5.13.2-xdg_dirs_set_path.patch
@@ -0,0 +1,150 @@
+--- ./kdecore/kglobalsettings.h.Ori 2013-05-08 22:16:42.771982104 +0200
++++ ./kdecore/kglobalsettings.h 2013-05-08 22:18:33.882577602 +0200
+@@ -253,6 +253,29 @@
+ */
+ static TQString documentPath() { initStatic(); return *s_documentPath; }
+
++ /**
++ * The path where documents are stored of the current user.
++ * @return the path of the videos directory
++ */
++ static TQString videosPath() { initStatic(); return *s_videosPath; }
++
++ /**
++ * The path where documents are stored of the current user.
++ * @return the path of the music directory
++ */
++ static TQString musicPath() { initStatic(); return *s_musicPath; }
++
++ /**
++ * The path where documents are stored of the current user.
++ * @return the path of the downloads directory
++ */
++ static TQString downloadPath() { initStatic(); return *s_downloadPath; }
++
++ /**
++ * The path where documents are stored of the current user.
++ * @return the path of the pictures directory
++ */
++ static TQString picturesPath() { initStatic(); return *s_picturesPath; }
+
+ /**
+ * The default color to use when highlighting toolbar buttons.
+@@ -560,6 +583,10 @@
+ static TQString* s_autostartPath;
+ static TQString* s_trashPath;
+ static TQString* s_documentPath;
++ static TQString* s_picturesPath;
++ static TQString* s_downloadPath;
++ static TQString* s_musicPath;
++ static TQString* s_videosPath;
+ static TQFont *_generalFont;
+ static TQFont *_fixedFont;
+ static TQFont *_toolBarFont;
+--- ./kdecore/kglobalsettings.cpp.xdg_path 2013-01-09 19:23:09.000000000 +0100
++++ ./kdecore/kglobalsettings.cpp 2013-05-08 22:26:26.451376166 +0200
+@@ -62,6 +62,10 @@
+ TQString* KGlobalSettings::s_autostartPath = 0;
+ TQString* KGlobalSettings::s_trashPath = 0;
+ TQString* KGlobalSettings::s_documentPath = 0;
++TQString* KGlobalSettings::s_videosPath = 0;
++TQString* KGlobalSettings::s_musicPath = 0;
++TQString* KGlobalSettings::s_downloadPath = 0;
++TQString* KGlobalSettings::s_picturesPath = 0;
+ TQFont *KGlobalSettings::_generalFont = 0;
+ TQFont *KGlobalSettings::_fixedFont = 0;
+ TQFont *KGlobalSettings::_toolBarFont = 0;
+@@ -83,7 +87,7 @@
+
+ // helper function for reading xdg user dirs: it is required in order to take
+ // care of locale stuff
+-void readXdgUserDirs(TQString *desktop, TQString *documents)
++void readXdgUserDirs(TQString *desktop, TQString *documents, TQString *videos, TQString *music, TQString *download, TQString *pictures)
+ {
+ TQFile f( TQDir::homeDirPath() + "/.config/user-dirs.dirs" );
+
+@@ -101,6 +105,14 @@
+ *desktop = line.remove("XDG_DESKTOP_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+ else if (line.startsWith("XDG_DOCUMENTS_DIR="))
+ *documents = line.remove("XDG_DOCUMENTS_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
++ else if (line.startsWith("XDG_MUSIC_DIR="))
++ *videos = line.remove("XDG_MUSIC_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
++ else if (line.startsWith("XDG_DOWNLOAD_DIR="))
++ *download = line.remove("XDG_DOWNLOAD_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
++ else if (line.startsWith("XDG_VIDEOS_DIR="))
++ *music = line.remove("XDG_VIDEOS_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
++ else if (line.startsWith("XDG_PICTURES_DIR="))
++ *pictures = line.remove("XDG_PICTURES_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+
+ line = s.readLine();
+ }
+@@ -515,30 +527,45 @@
+ s_autostartPath = new TQString();
+ s_trashPath = new TQString();
+ s_documentPath = new TQString();
++ s_videosPath = new TQString();
++ s_musicPath = new TQString();
++ s_downloadPath = new TQString();
++ s_picturesPath = new TQString();
++
+
+ KConfigGroup g( KGlobal::config(), "Paths" );
+
+- // Read desktop and documents path using XDG_USER_DIRS
+- readXdgUserDirs(s_desktopPath, s_documentPath);
++ // Read desktop and documents path using XDG_USER_DIRS
++ readXdgUserDirs(s_desktopPath, s_documentPath, s_musicPath, s_videosPath, s_downloadPath, s_picturesPath);
+
+ if (s_desktopPath->isEmpty() == true) {
+ *s_desktopPath = TQDir::homeDirPath() + "/Desktop/";
+ }
++
+ *s_desktopPath = TQDir::cleanDirPath( *s_desktopPath );
+ if ( !s_desktopPath->endsWith("/") )
+ s_desktopPath->append('/');
+
+- if (s_documentPath->isEmpty() == true) {
+-#ifdef Q_WS_WIN
+- *s_documentPath = getWin32ShellFoldersPath("Personal");
+-#else
+- *s_documentPath = TQDir::homeDirPath() + "/Documents/";
+-#endif
+- }
+ *s_documentPath = TQDir::cleanDirPath( *s_documentPath );
+ if ( !s_documentPath->endsWith("/"))
+ s_documentPath->append('/');
+
++ *s_musicPath = TQDir::cleanDirPath( *s_musicPath );
++ if ( !s_musicPath->endsWith("/"))
++ s_musicPath->append('/');
++
++ *s_videosPath = TQDir::cleanDirPath( *s_videosPath );
++ if ( !s_videosPath->endsWith("/"))
++ s_videosPath->append('/');
++
++ *s_downloadPath = TQDir::cleanDirPath( *s_downloadPath );
++ if ( !s_downloadPath->endsWith("/"))
++ s_downloadPath->append('/');
++
++ *s_picturesPath = TQDir::cleanDirPath( *s_picturesPath );
++ if ( !s_picturesPath->endsWith("/"))
++ s_picturesPath->append('/');
++
+ // Trash Path - TODO remove in KDE4 (kio_trash can't use it for interoperability reasons)
+ *s_trashPath = *s_desktopPath + i18n("Trash") + "/";
+ *s_trashPath = g.readPathEntry( "Trash" , *s_trashPath);
+@@ -603,6 +630,14 @@
+ s_desktopPath = 0L;
+ delete s_documentPath;
+ s_documentPath = 0L;
++ delete s_videosPath;
++ s_videosPath = 0L;
++ delete s_picturesPath;
++ s_picturesPath = 0L;
++ delete s_downloadPath;
++ s_downloadPath = 0L;
++ delete s_musicPath;
++ s_musicPath = 0L;
+ }
+
+ KGlobalSettings::KMouseSettings & KGlobalSettings::mouseSettings()