From 622abb92058cf6b607d1c20eb1f04ca3a5cdad09 Mon Sep 17 00:00:00 2001 From: Binxin Date: Sun, 28 Feb 2021 16:25:58 +0100 Subject: [PATCH] fix #7452: Adds ignore parameter to minetyp and notify the user if the file downloaded is HTML --- .../org/jabref/gui/externalfiletype/ExternalFileTypes.java | 3 +++ .../java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/src/main/java/org/jabref/gui/externalfiletype/ExternalFileTypes.java b/src/main/java/org/jabref/gui/externalfiletype/ExternalFileTypes.java index b9999bdbef20..148c21503678 100644 --- a/src/main/java/org/jabref/gui/externalfiletype/ExternalFileTypes.java +++ b/src/main/java/org/jabref/gui/externalfiletype/ExternalFileTypes.java @@ -10,6 +10,7 @@ import java.util.Set; import java.util.TreeSet; +import org.apache.commons.lang3.StringUtils; import org.jabref.gui.Globals; import org.jabref.logic.bibtex.FileFieldWriter; import org.jabref.model.entry.LinkedFile; @@ -111,6 +112,8 @@ public Optional getExternalFileTypeForName(String filename) { * guaranteed to be returned. */ public Optional getExternalFileTypeByMimeType(String mimeType) { + // Ignores parameters according to link: (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) + mimeType=StringUtils.substringBefore(mimeType,";").trim(); for (ExternalFileType type : externalFileTypes) { if (type.getMimeType().equalsIgnoreCase(mimeType)) { return Optional.of(type); diff --git a/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java b/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java index 79993c07758e..b1c9b352bdc1 100644 --- a/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java +++ b/src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java @@ -446,6 +446,10 @@ public void download() { linkedFiles.set(oldFileIndex, newLinkedFile); } entry.setFiles(linkedFiles); + // Notify in bar when the filetype is HTML. + if (newLinkedFile.getFileType().equals(StandardExternalFileType.URL.getName())) { + dialogService.notify("Downloaded a linked HTML file."); + } }); downloadProgress.bind(downloadTask.workDonePercentageProperty()); downloadTask.titleProperty().set(Localization.lang("Downloading"));