diff options
Diffstat (limited to 'redhat/tdelibs/tdelibs-14.0.0-xdg_dirs_set_path.patch')
-rw-r--r-- | redhat/tdelibs/tdelibs-14.0.0-xdg_dirs_set_path.patch | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/redhat/tdelibs/tdelibs-14.0.0-xdg_dirs_set_path.patch b/redhat/tdelibs/tdelibs-14.0.0-xdg_dirs_set_path.patch new file mode 100644 index 000000000..f32dec25b --- /dev/null +++ b/redhat/tdelibs/tdelibs-14.0.0-xdg_dirs_set_path.patch @@ -0,0 +1,150 @@ +--- ./tdecore/tdeglobalsettings.h.Ori 2013-05-08 22:16:42.771982104 +0200 ++++ ./tdecore/tdeglobalsettings.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; +--- ./tdecore/tdeglobalsettings.cpp.xdg_path 2013-01-09 19:23:09.000000000 +0100 ++++ ./tdecore/tdeglobalsettings.cpp 2013-05-08 22:26:26.451376166 +0200 +@@ -62,6 +62,10 @@ + TQString* TDEGlobalSettings::s_autostartPath = 0; + TQString* TDEGlobalSettings::s_trashPath = 0; + TQString* TDEGlobalSettings::s_documentPath = 0; ++TQString* TDEGlobalSettings::s_videosPath = 0; ++TQString* TDEGlobalSettings::s_musicPath = 0; ++TQString* TDEGlobalSettings::s_downloadPath = 0; ++TQString* TDEGlobalSettings::s_picturesPath = 0; + TQFont *TDEGlobalSettings::_generalFont = 0; + TQFont *TDEGlobalSettings::_fixedFont = 0; + TQFont *TDEGlobalSettings::_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(); ++ + + TDEConfigGroup g( TDEGlobal::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 (tdeio_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; + } + + TDEGlobalSettings::KMouseSettings & TDEGlobalSettings::mouseSettings() |