Skip to content

Commit 5cc4bee

Browse files
committed
expanding JSUtil to include Java open URL in browser
1 parent 1cf235d commit 5cc4bee

File tree

4 files changed

+27
-11
lines changed

4 files changed

+27
-11
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20231222043536
1+
20240102050937
1.36 KB
Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20231222043536
1+
20240102050937

sources/net.sf.j2s.java.core/src/swingjs/JSUtil.java

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414
import java.io.IOException;
1515
import java.io.InputStream;
1616
import java.io.OutputStream;
17+
import java.lang.reflect.Method;
1718
import java.net.MalformedURLException;
19+
import java.net.URI;
1820
import java.net.URL;
1921
import java.util.HashMap;
2022
import java.util.Hashtable;
@@ -669,17 +671,31 @@ public static BufferedInputStream getURLInputStream(URL url, boolean andDelete)
669671
*/
670672
@Override
671673
public void displayURL(String url, String target) {
672-
showWebPage((URL)(Object)url, target);
674+
showWebPage(url, target);
673675
}
674676

675-
public static void showWebPage(URL url, Object target) {
676-
/**
677-
* @j2sNative
678-
*
679-
* if (target) window.open(url.toString(), target); else
680-
* window.open(url.toString());
681-
*/
682-
}
677+
public static void showWebPage(Object url, Object target) {
678+
String surl = (url instanceof String ? (String) url : url.toString());
679+
/**
680+
* @j2sNative
681+
*
682+
* if (target) window.open(surl, target); else
683+
* window.open(url.toString());
684+
*/
685+
{
686+
try {
687+
Class<?> c = Class.forName("java.awt.Desktop");
688+
Method getDesktop = c.getMethod("getDesktop", new Class[] {});
689+
Object deskTop = getDesktop.invoke(null, new Object[] {});
690+
Method browse = c.getMethod("browse", new Class[] { URI.class });
691+
Object arguments[] = { new URI(surl) };
692+
browse.invoke(deskTop, arguments);
693+
} catch (Exception e) {
694+
e.printStackTrace();
695+
}
696+
}
697+
698+
}
683699

684700

685701

0 commit comments

Comments
 (0)