summaryrefslogtreecommitdiff
path: root/src/settingsdialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/settingsdialog.cpp')
-rw-r--r--src/settingsdialog.cpp19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/settingsdialog.cpp b/src/settingsdialog.cpp
index 91ce0e25..31c1d0fe 100644
--- a/src/settingsdialog.cpp
+++ b/src/settingsdialog.cpp
@@ -361,18 +361,15 @@ void SettingsDialog::on_clearCacheButton_clicked()
void SettingsDialog::normalizePath(QLineEdit *lineEdit)
{
QString text = lineEdit->text();
- QString new_text = text;
- if (text.contains("%BASE_DIR%")) {
- QString baseDir = ui->baseDirEdit->text();
- new_text = new_text.replace("%BASE_DIR%", baseDir);
- new_text = QDir(new_text).absolutePath();
- new_text = new_text.replace(baseDir, "%BASE_DIR%");
- } else {
- new_text = QDir(new_text).absolutePath();
- }
- if (new_text.compare(text, Qt::CaseInsensitive)) {
- lineEdit->setText(new_text);
+ while (text.endsWith('/') || text.endsWith('\\')) {
+ text.chop(1);
}
+ lineEdit->setText(text);
+}
+
+void SettingsDialog::on_baseDirEdit_editingFinished()
+{
+ normalizePath(ui->baseDirEdit);
}
void SettingsDialog::on_downloadDirEdit_editingFinished()