From e2f4cc64035e2a01f651eaac2e410b0947db4395 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Sat, 17 Sep 2016 13:09:58 +0200 Subject: [PATCH 1/4] Check avaiable help lanugages when opening specific help page If help lang not avaiable use English Fix for #1937 --- CHANGELOG.md | 1 + .../net/sf/jabref/gui/help/HelpAction.java | 24 +++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3259d3b40aa..3a9600a6bcf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -58,6 +58,7 @@ We refer to [GitHub issues](https://github.com/JabRef/jabref/issues) by using `# - Fixed InvalidBackgroundColor flickering with Ctrl-s and File > Save database - Fixed loop when pulling changes (shared database) when current selected field has changed - Fixed [#1958](https://github.com/JabRef/jabref/issues/1958): Verbatim fields are no longer checked for HTML encoded characters by integrity checks +- Fixed [#1937](https://github.com/JabRef/jabref/issues/1937): If no help page for the current chosen language exists, the english help page will be shown ### Removed - The non-supported feature of being able to define file directories for any extension is removed. Still, it should work for older databases using the legacy `ps` and `pdf` fields, although we strongly encourage using the `file` field. diff --git a/src/main/java/net/sf/jabref/gui/help/HelpAction.java b/src/main/java/net/sf/jabref/gui/help/HelpAction.java index 33dea5b3eb2..ecc3d5f65b2 100644 --- a/src/main/java/net/sf/jabref/gui/help/HelpAction.java +++ b/src/main/java/net/sf/jabref/gui/help/HelpAction.java @@ -6,6 +6,10 @@ import java.awt.event.ActionEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import java.util.HashSet; +import java.util.Set; +import java.util.stream.Collectors; +import java.util.stream.Stream; import javax.swing.Action; import javax.swing.Icon; @@ -27,6 +31,12 @@ */ public class HelpAction extends MnemonicAwareAction { + /** + * New languages of the help have to be added here + */ + Set avaiableLangFiles = Stream.of("en", "de", "fr", "in", "ja") + .collect(Collectors.toCollection(HashSet::new)); + private HelpFile helpPage; @@ -67,6 +77,7 @@ public JLabel getHelpLabel(String labelText) { helpLabel.setForeground(Color.BLUE); helpLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); helpLabel.addMouseListener(new MouseAdapter() { + @Override public void mouseClicked(MouseEvent e) { openHelpPage(); @@ -85,7 +96,16 @@ public void actionPerformed(ActionEvent e) { } private void openHelpPage() { - String url = "https://help.jabref.org/" + Globals.prefs.get(JabRefPreferences.LANGUAGE) + "/" + helpPage.getPageName(); - JabRefDesktop.openBrowserShowPopup(url); + String lang = Globals.prefs.get(JabRefPreferences.LANGUAGE); + StringBuilder sb = new StringBuilder("https://help.jabref.org/"); + + if (avaiableLangFiles.contains(lang)) { + sb.append(lang); + sb.append("/"); + } else { + sb.append("en/"); + } + sb.append(helpPage.getPageName()); + JabRefDesktop.openBrowserShowPopup(sb.toString().trim()); } } From 13fdce08523b4ad16034136f47448dabd43c4d71 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Sat, 17 Sep 2016 13:15:20 +0200 Subject: [PATCH 2/4] Make set private --- src/main/java/net/sf/jabref/gui/help/HelpAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/net/sf/jabref/gui/help/HelpAction.java b/src/main/java/net/sf/jabref/gui/help/HelpAction.java index ecc3d5f65b2..9f9b17727d6 100644 --- a/src/main/java/net/sf/jabref/gui/help/HelpAction.java +++ b/src/main/java/net/sf/jabref/gui/help/HelpAction.java @@ -34,7 +34,7 @@ public class HelpAction extends MnemonicAwareAction { /** * New languages of the help have to be added here */ - Set avaiableLangFiles = Stream.of("en", "de", "fr", "in", "ja") + private final Set avaiableLangFiles = Stream.of("en", "de", "fr", "in", "ja") .collect(Collectors.toCollection(HashSet::new)); private HelpFile helpPage; From 789b479a209a2ee18cacc7382f5f0ffbcac6c6e8 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Sat, 17 Sep 2016 13:42:25 +0200 Subject: [PATCH 3/4] Remove unnecessary trim --- src/main/java/net/sf/jabref/gui/help/HelpAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/net/sf/jabref/gui/help/HelpAction.java b/src/main/java/net/sf/jabref/gui/help/HelpAction.java index 9f9b17727d6..28065cdddfa 100644 --- a/src/main/java/net/sf/jabref/gui/help/HelpAction.java +++ b/src/main/java/net/sf/jabref/gui/help/HelpAction.java @@ -106,6 +106,6 @@ private void openHelpPage() { sb.append("en/"); } sb.append(helpPage.getPageName()); - JabRefDesktop.openBrowserShowPopup(sb.toString().trim()); + JabRefDesktop.openBrowserShowPopup(sb.toString()); } } From 91dc05fdf3e57c4c0ba7c225edb0d11c4dd0f386 Mon Sep 17 00:00:00 2001 From: Siedlerchr Date: Sat, 17 Sep 2016 13:58:50 +0200 Subject: [PATCH 4/4] Make constant static --- src/main/java/net/sf/jabref/gui/help/HelpAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/net/sf/jabref/gui/help/HelpAction.java b/src/main/java/net/sf/jabref/gui/help/HelpAction.java index 28065cdddfa..9ea1e917791 100644 --- a/src/main/java/net/sf/jabref/gui/help/HelpAction.java +++ b/src/main/java/net/sf/jabref/gui/help/HelpAction.java @@ -34,7 +34,7 @@ public class HelpAction extends MnemonicAwareAction { /** * New languages of the help have to be added here */ - private final Set avaiableLangFiles = Stream.of("en", "de", "fr", "in", "ja") + private static final Set avaiableLangFiles = Stream.of("en", "de", "fr", "in", "ja") .collect(Collectors.toCollection(HashSet::new)); private HelpFile helpPage;