From fd66b9eda25cf9a4dd986081b1dbd14fd806b243 Mon Sep 17 00:00:00 2001 From: Akira Ohgaki <akiraohgaki@gmail.com> Date: Mon, 5 Jun 2017 11:48:50 +0900 Subject: [PATCH] Convert path strings --- app/configs/install_types.json | 10 +++++----- app/src/handlers/confighandler.cpp | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/app/configs/install_types.json b/app/configs/install_types.json index 335de22..87e9b33 100644 --- a/app/configs/install_types.json +++ b/app/configs/install_types.json @@ -6,27 +6,27 @@ }, "downloads": { "name": "Downloads", - "destination": "$HOME/Downloads", + "destination": "$XDG_DOWNLOAD_DIR", "generic_destination": "$APP_DATA/downloads" }, "documents": { "name": "Documents", - "destination": "$HOME/Documents", + "destination": "$XDG_DOCUMENTS_DIR", "generic_destination": "$APP_DATA/documents" }, "pictures": { "name": "Pictures", - "destination": "$HOME/Pictures", + "destination": "$XDG_PICTURES_DIR", "generic_destination": "$APP_DATA/pictures" }, "music": { "name": "Music", - "destination": "$HOME/Music", + "destination": "$XDG_MUSIC_DIR", "generic_destination": "$APP_DATA/music" }, "videos": { "name": "Videos", - "destination": "$HOME/Videos", + "destination": "$XDG_VIDEOS_DIR", "generic_destination": "$APP_DATA/videos" }, "wallpapers": { diff --git a/app/src/handlers/confighandler.cpp b/app/src/handlers/confighandler.cpp index bc75e9f..7427160 100644 --- a/app/src/handlers/confighandler.cpp +++ b/app/src/handlers/confighandler.cpp @@ -1,6 +1,7 @@ #include "confighandler.h" #include <QStringList> +#include <QStandardPaths> #include "qtlib_dir.h" @@ -50,6 +51,21 @@ QString ConfigHandler::convertPathString(const QString &path) if (newPath.contains("$HOME")) { newPath.replace("$HOME", qtlib::Dir::homePath()); } + else if (newPath.contains("$XDG_DOCUMENTS_DIR")) { + newPath.replace("$XDG_DOCUMENTS_DIR", QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation)); + } + else if (newPath.contains("$XDG_DOWNLOAD_DIR")) { + newPath.replace("$XDG_DOWNLOAD_DIR", QStandardPaths::writableLocation(QStandardPaths::DownloadLocation)); + } + else if (newPath.contains("$XDG_PICTURES_DIR")) { + newPath.replace("$XDG_PICTURES_DIR", QStandardPaths::writableLocation(QStandardPaths::PicturesLocation)); + } + else if (newPath.contains("$XDG_MUSIC_DIR")) { + newPath.replace("$XDG_MUSIC_DIR", QStandardPaths::writableLocation(QStandardPaths::MusicLocation)); + } + else if (newPath.contains("$XDG_VIDEOS_DIR")) { + newPath.replace("$XDG_VIDEOS_DIR", QStandardPaths::writableLocation(QStandardPaths::MoviesLocation)); + } else if (newPath.contains("$XDG_DATA_HOME")) { newPath.replace("$XDG_DATA_HOME", qtlib::Dir::genericDataPath()); } -- GitLab