From 15854bdf068bb2589ceebda3cd77b557efa34561 Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Thu, 20 Nov 2014 00:58:26 +0100 Subject: [PATCH] Restrict non Desktop API for linux only (Win7 cause problems) --- .../java/io/bitsquare/util/Utilities.java | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/main/java/io/bitsquare/util/Utilities.java b/src/main/java/io/bitsquare/util/Utilities.java index 83170bf31a..f709a4675c 100644 --- a/src/main/java/io/bitsquare/util/Utilities.java +++ b/src/main/java/io/bitsquare/util/Utilities.java @@ -21,6 +21,8 @@ import com.google.gson.FieldNamingPolicy; import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import java.awt.*; + import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -78,6 +80,24 @@ public class Utilities { } } + public static void openURI(URI uri) throws IOException { + if (!isLinux() + && Desktop.isDesktopSupported() + && Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) { + Desktop.getDesktop().browse(uri); + } + else { + // On Linux Desktop is poorly implemented. + // See https://stackoverflow.com/questions/18004150/desktop-api-is-not-supported-on-the-current-platform + if (!DesktopApi.browse(uri)) + throw new IOException("Failed to open URI: " + uri.toString()); + } + } + + public static void openWebPage(String target) throws Exception { + openURI(new URI(target)); + } + public static T jsonToObject(String jsonString, Class classOfT) { Gson gson = @@ -138,16 +158,6 @@ public class Utilities { printElapsedTime(""); } - public static void openURI(URI uri) throws Exception { - // On Linux Desktop is poorly implemented. - // See https://stackoverflow.com/questions/18004150/desktop-api-is-not-supported-on-the-current-platform - if (!DesktopApi.browse(uri)) - throw new Exception("Failed to open URI: " + uri.toString()); - } - - public static void openWebPage(String target) throws Exception { - openURI(new URI(target)); - } public static Object copy(Serializable orig) { Object obj = null;