aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYana Stamcheva <yana@jitsi.org>2006-08-15 11:53:16 +0000
committerYana Stamcheva <yana@jitsi.org>2006-08-15 11:53:16 +0000
commite7237230a80230f56b7acc3c9aec9ffe45d11bed (patch)
tree05eeb1a65ba1c0f99bf3a29ae7b0c9c675c2af9e /src
parent3a90a5231deeba68c144fa6bbcc6bdac0f2c716d (diff)
downloadjitsi-e7237230a80230f56b7acc3c9aec9ffe45d11bed.zip
jitsi-e7237230a80230f56b7acc3c9aec9ffe45d11bed.tar.gz
jitsi-e7237230a80230f56b7acc3c9aec9ffe45d11bed.tar.bz2
launch the default browser on mac - work in progress
Diffstat (limited to 'src')
-rwxr-xr-xsrc/net/java/sip/communicator/impl/gui/main/QuickMenu.java4
-rw-r--r--src/net/java/sip/communicator/impl/gui/main/contactlist/ContactRightButtonMenu.java5
-rwxr-xr-xsrc/net/java/sip/communicator/impl/gui/main/message/ChatConversationPanel.java6
-rw-r--r--src/net/java/sip/communicator/impl/gui/swing.ui.manifest.mf5
-rw-r--r--src/net/java/sip/communicator/impl/gui/utils/CrossPlatformBrowserLauncher.java (renamed from src/net/java/sip/communicator/impl/gui/utils/BrowserLauncher.java)51
5 files changed, 19 insertions, 52 deletions
diff --git a/src/net/java/sip/communicator/impl/gui/main/QuickMenu.java b/src/net/java/sip/communicator/impl/gui/main/QuickMenu.java
index 22f74c0..398b183 100755
--- a/src/net/java/sip/communicator/impl/gui/main/QuickMenu.java
+++ b/src/net/java/sip/communicator/impl/gui/main/QuickMenu.java
@@ -30,7 +30,7 @@ import net.java.sip.communicator.impl.gui.main.contactlist.addcontact.AddContact
import net.java.sip.communicator.impl.gui.main.contactlist.addcontact.AddContactWizardPage2;
import net.java.sip.communicator.impl.gui.main.contactlist.addcontact.AddContactWizardPage3;
import net.java.sip.communicator.impl.gui.main.contactlist.addcontact.NewContact;
-import net.java.sip.communicator.impl.gui.utils.BrowserLauncher;
+import net.java.sip.communicator.impl.gui.utils.CrossPlatformBrowserLauncher;
import net.java.sip.communicator.impl.gui.utils.ImageLoader;
import net.java.sip.communicator.service.contactlist.MetaContact;
import net.java.sip.communicator.service.contactlist.MetaContactGroup;
@@ -250,7 +250,7 @@ public class QuickMenu extends SIPCommToolBar implements ActionListener,
OperationSetWebContactInfo wContactInfo
= mainFrame.getWebContactInfo(defaultProvider);
- BrowserLauncher.openURL(
+ CrossPlatformBrowserLauncher.openURL(
wContactInfo.getWebContactInfo(defaultContact)
.toString());
}
diff --git a/src/net/java/sip/communicator/impl/gui/main/contactlist/ContactRightButtonMenu.java b/src/net/java/sip/communicator/impl/gui/main/contactlist/ContactRightButtonMenu.java
index ad8045e..0d6500c 100644
--- a/src/net/java/sip/communicator/impl/gui/main/contactlist/ContactRightButtonMenu.java
+++ b/src/net/java/sip/communicator/impl/gui/main/contactlist/ContactRightButtonMenu.java
@@ -26,14 +26,15 @@ import net.java.sip.communicator.impl.gui.i18n.Messages;
import net.java.sip.communicator.impl.gui.main.MainFrame;
import net.java.sip.communicator.impl.gui.main.contactlist.addcontact.AddContactDialog;
import net.java.sip.communicator.impl.gui.main.message.history.HistoryWindow;
-import net.java.sip.communicator.impl.gui.utils.BrowserLauncher;
import net.java.sip.communicator.impl.gui.utils.Constants;
+import net.java.sip.communicator.impl.gui.utils.CrossPlatformBrowserLauncher;
import net.java.sip.communicator.impl.gui.utils.ImageLoader;
import net.java.sip.communicator.service.contactlist.MetaContact;
import net.java.sip.communicator.service.contactlist.MetaContactGroup;
import net.java.sip.communicator.service.protocol.Contact;
import net.java.sip.communicator.service.protocol.OperationSetWebContactInfo;
import net.java.sip.communicator.service.protocol.ProtocolProviderService;
+import edu.stanford.ejalbert.BrowserLauncher;
/**
* The ContactRightButtonMenu is the menu, opened when user clicks with the
@@ -293,7 +294,7 @@ public class ContactRightButtonMenu extends JPopupMenu implements
OperationSetWebContactInfo wContactInfo
= mainFrame.getWebContactInfo(defaultProvider);
- BrowserLauncher.openURL(
+ CrossPlatformBrowserLauncher.openURL(
wContactInfo.getWebContactInfo(defaultContact)
.toString());
}
diff --git a/src/net/java/sip/communicator/impl/gui/main/message/ChatConversationPanel.java b/src/net/java/sip/communicator/impl/gui/main/message/ChatConversationPanel.java
index 6396714..708f889 100755
--- a/src/net/java/sip/communicator/impl/gui/main/message/ChatConversationPanel.java
+++ b/src/net/java/sip/communicator/impl/gui/main/message/ChatConversationPanel.java
@@ -46,7 +46,7 @@ import javax.swing.text.html.HTMLEditorKit;
import net.java.sip.communicator.impl.gui.i18n.Messages;
import net.java.sip.communicator.impl.gui.main.message.menu.ChatRightButtonMenu;
import net.java.sip.communicator.impl.gui.utils.AntialiasingManager;
-import net.java.sip.communicator.impl.gui.utils.BrowserLauncher;
+import net.java.sip.communicator.impl.gui.utils.CrossPlatformBrowserLauncher;
import net.java.sip.communicator.impl.gui.utils.Constants;
import net.java.sip.communicator.impl.gui.utils.ImageLoader;
import net.java.sip.communicator.impl.gui.utils.SIPCommHTMLEditorKit;
@@ -157,7 +157,7 @@ public class ChatConversationPanel extends JScrollPane implements
});
openLinkItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- BrowserLauncher.openURL(currentHref);
+ CrossPlatformBrowserLauncher.openURL(currentHref);
}
});
/*
@@ -427,7 +427,7 @@ public class ChatConversationPanel extends JScrollPane implements
public void hyperlinkUpdate(HyperlinkEvent e) {
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
URL url = e.getURL();
- BrowserLauncher.openURL(url.toString());
+ CrossPlatformBrowserLauncher.openURL(url.toString());
} else if (e.getEventType() == HyperlinkEvent.EventType.ENTERED) {
String href = e.getDescription();
diff --git a/src/net/java/sip/communicator/impl/gui/swing.ui.manifest.mf b/src/net/java/sip/communicator/impl/gui/swing.ui.manifest.mf
index 88f3e50..11ace0f 100644
--- a/src/net/java/sip/communicator/impl/gui/swing.ui.manifest.mf
+++ b/src/net/java/sip/communicator/impl/gui/swing.ui.manifest.mf
@@ -31,4 +31,7 @@ Import-Package: org.osgi.framework,
javax.swing.tree,
javax.swing.undo,
javax.swing.event,
- javax.swing.border
+ javax.swing.border,
+ edu.stanford.ejalbert,
+ edu.stanford.ejalbert.exception,
+ edu.stanford.ejalbert.exceptionhandler
diff --git a/src/net/java/sip/communicator/impl/gui/utils/BrowserLauncher.java b/src/net/java/sip/communicator/impl/gui/utils/CrossPlatformBrowserLauncher.java
index 8354f87..5073845 100644
--- a/src/net/java/sip/communicator/impl/gui/utils/BrowserLauncher.java
+++ b/src/net/java/sip/communicator/impl/gui/utils/CrossPlatformBrowserLauncher.java
@@ -12,6 +12,7 @@ import java.net.URL;
import javax.swing.JOptionPane;
+import edu.stanford.ejalbert.BrowserLauncher;
import edu.stanford.ejalbert.BrowserLauncherRunner;
import edu.stanford.ejalbert.exceptionhandler.BrowserLauncherErrorHandler;
@@ -21,12 +22,10 @@ import edu.stanford.ejalbert.exceptionhandler.BrowserLauncherErrorHandler;
*
* @author Yana Stamcheva
*/
-public class BrowserLauncher {
+public class CrossPlatformBrowserLauncher {
- //private static final String errMsg
- // = Messages.getString("launchBrowserError");
-
- private static edu.stanford.ejalbert.BrowserLauncher launcher;
+ private static BrowserLauncher launcher;
+
/**
* Launches a browser for the given url, depending on the operation system
* and the browsers available.
@@ -34,17 +33,14 @@ public class BrowserLauncher {
* @param url The url to open in the browser.
*/
public static void openURL(String urlString) {
-
try {
- launcher = new edu.stanford.ejalbert.BrowserLauncher(null);
+ launcher = new BrowserLauncher(null);
- if (urlString == null || urlString.trim().length() == 0) {
+ if (urlString == null || urlString.trim().length() == 0) {
throw new MalformedURLException("You must specify a url.");
}
new URL(urlString); // may throw MalformedURLException
- BrowserLauncherErrorHandler errorHandler
- = new TestAppErrorHandler();
-
+ BrowserLauncherErrorHandler errorHandler = new TestAppErrorHandler();
String targetBrowser = launcher.getBrowserList().get(0).toString();
BrowserLauncherRunner runner = new BrowserLauncherRunner(
@@ -62,39 +58,6 @@ public class BrowserLauncher {
"Error Message",
JOptionPane.ERROR_MESSAGE);
}
-
- /*
- String osName = System.getProperty("os.name");
- try {
- if (osName.startsWith("Mac OS")) {
- Class fileMgr = Class.forName("com.apple.eio.FileManager");
- Method openURL = fileMgr.getDeclaredMethod("openURL",
- new Class[] { String.class });
- openURL.invoke(null, new Object[] { url });
- }
- else if (osName.startsWith("Windows"))
- Runtime.getRuntime().exec(
- "rundll32 url.dll,FileProtocolHandler " + url);
- else { // assume Unix or Linux
- String[] browsers = { "firefox", "opera", "konqueror",
- "epiphany", "mozilla", "netscape" };
- String browser = null;
- for (int count = 0; count < browsers.length
- && browser == null; count++) {
- if (Runtime.getRuntime().exec(new String[] {
- "which", browsers[count] }).waitFor() == 0)
- browser = browsers[count];
- }
- if (browser == null)
- throw new Exception("Could not find web browser");
- else
- Runtime.getRuntime().exec(new String[] { browser, url });
- }
- } catch (Exception e) {
- JOptionPane.showMessageDialog(null, errMsg + ":\n"
- + e.getLocalizedMessage());
- }
- */
}
private static class TestAppErrorHandler