| 195 | } |
| 196 | |
| 197 | void SettingsDialog::onAddDirectoryToWatchButtonClicked() { |
| 198 | QFileDialog fileDialog(this); |
| 199 | |
| 200 | fileDialog.setFileMode(QFileDialog::DirectoryOnly); |
| 201 | fileDialog.setWindowTitle(tr("Select additional directory to watch")); |
| 202 | fileDialog.setDirectory(QStandardPaths::locate(QStandardPaths::HomeLocation, ".", QStandardPaths::LocateDirectory)); |
| 203 | |
| 204 | // Gtk+ >= 3 segfaults when trying to use the native dialog, therefore we need to enforce the Qt one |
| 205 | // See #218 for more information |
| 206 | fileDialog.setOption(QFileDialog::DontUseNativeDialog, true); |
| 207 | |
| 208 | if (fileDialog.exec()) { |
| 209 | QString dirPath = fileDialog.selectedFiles().first(); |
| 210 | addDirectoryToWatchToListView(dirPath); |
| 211 | } |
| 212 | } |
| 213 | |
| 214 | void SettingsDialog::onRemoveDirectoryToWatchButtonClicked() { |
| 215 | auto* widget = ui->additionalDirsListWidget; |