diff --git a/src/main/java/org/jabref/gui/filelist/FileListEntryEditor.java b/src/main/java/org/jabref/gui/filelist/FileListEntryEditor.java index fc9906a1d84..e0f3ebf2680 100644 --- a/src/main/java/org/jabref/gui/filelist/FileListEntryEditor.java +++ b/src/main/java/org/jabref/gui/filelist/FileListEntryEditor.java @@ -61,7 +61,9 @@ * * For use when downloading files, this class also offers a progress bar and a "Downloading..." * label that can be hidden when the download is complete. + * @deprecated Use {@link LinkedFileEditDialogView} */ +@Deprecated public class FileListEntryEditor { private static final Pattern REMOTE_LINK_PATTERN = Pattern.compile("[a-z]+://.*"); diff --git a/src/main/java/org/jabref/gui/filelist/LinkedFileEditDialogController.java b/src/main/java/org/jabref/gui/filelist/LinkedFileEditDialogController.java index eeb4ef3fdb1..86067326bf6 100644 --- a/src/main/java/org/jabref/gui/filelist/LinkedFileEditDialogController.java +++ b/src/main/java/org/jabref/gui/filelist/LinkedFileEditDialogController.java @@ -11,6 +11,7 @@ import org.jabref.gui.DialogService; import org.jabref.gui.StateManager; import org.jabref.gui.externalfiletype.ExternalFileType; +import org.jabref.preferences.PreferencesService; public class LinkedFileEditDialogController extends AbstractController { @@ -23,9 +24,11 @@ public class LinkedFileEditDialogController extends AbstractController selectedExternalFileType = new SimpleObjectProperty<>(); private final BibDatabaseContext database; private final DialogService dialogService; + private final PreferencesService preferences; - public LinkedFilesEditDialogViewModel(LinkedFile linkedFile, BibDatabaseContext database, DialogService dialogService) { + public LinkedFilesEditDialogViewModel(LinkedFile linkedFile, BibDatabaseContext database, DialogService dialogService, PreferencesService preferences2) { this.database = database; this.dialogService = dialogService; + this.preferences = preferences2; externalfilesTypes.set(FXCollections.observableArrayList(ExternalFileTypes.getInstance().getExternalFileTypeSelection())); setValues(linkedFile); } @@ -61,9 +63,9 @@ private void checkExtension() { public void openBrowseDialog() { String fileText = linkProperty().get(); - Optional file = FileHelper.expandFilename(database, fileText, Globals.prefs.getFileDirectoryPreferences()); + Optional file = FileHelper.expandFilename(database, fileText, preferences.getFileDirectoryPreferences()); - Path workingDir = file.orElse(Paths.get(Globals.prefs.get(JabRefPreferences.WORKING_DIRECTORY))); + Path workingDir = file.orElse(Paths.get(preferences.get(JabRefPreferences.WORKING_DIRECTORY))); String fileName = Paths.get(fileText).getFileName().toString(); FileDialogConfiguration fileDialogConfiguration = new FileDialogConfiguration.Builder() @@ -73,10 +75,10 @@ public void openBrowseDialog() { dialogService.showFileOpenDialog(fileDialogConfiguration).ifPresent(path -> { // Store the directory for next time: - Globals.prefs.put(JabRefPreferences.WORKING_DIRECTORY, path.toString()); + preferences.put(JabRefPreferences.WORKING_DIRECTORY, path.toString()); // If the file is below the file directory, make the path relative: - List fileDirectories = database.getFileDirectoriesAsPaths(Globals.prefs.getFileDirectoryPreferences()); + List fileDirectories = database.getFileDirectoriesAsPaths(preferences.getFileDirectoryPreferences()); path = FileUtil.shortenFileName(path, fileDirectories); linkProperty().set(path.toString()); diff --git a/src/main/java/org/jabref/preferences/PreferencesService.java b/src/main/java/org/jabref/preferences/PreferencesService.java index 6ea1a9d56dc..2759b328528 100644 --- a/src/main/java/org/jabref/preferences/PreferencesService.java +++ b/src/main/java/org/jabref/preferences/PreferencesService.java @@ -2,6 +2,7 @@ import org.jabref.gui.keyboard.KeyBindingRepository; import org.jabref.logic.journals.JournalAbbreviationPreferences; +import org.jabref.model.metadata.FileDirectoryPreferences; public interface PreferencesService { JournalAbbreviationPreferences getJournalAbbreviationPreferences(); @@ -11,4 +12,10 @@ public interface PreferencesService { KeyBindingRepository getKeyBindingRepository(); void storeJournalAbbreviationPreferences(JournalAbbreviationPreferences abbreviationsPreferences); + + FileDirectoryPreferences getFileDirectoryPreferences(); + + String get(String key); + + void put(String key, String value); }