*** empty log message ***
diff --git a/bundles/org.eclipse.ui.browser/plugin.properties b/bundles/org.eclipse.ui.browser/plugin.properties
index f5c79a7..cb1de1e 100644
--- a/bundles/org.eclipse.ui.browser/plugin.properties
+++ b/bundles/org.eclipse.ui.browser/plugin.properties
@@ -21,6 +21,13 @@
actionSetWebBrowserTitle=Web Browser
actionSetOpenWebBrowser=Open Web Browser
+command.openBrowser.name=Open Browser
+command.openBrowser.description=Opens the default web browser.
+commandParameter.openBrowser.url.name=URL
+commandParameter.openBrowser.browserId.name=Browser Id
+commandParameter.openBrowser.name.name=Browser Name
+commandParameter.openBrowser.tooltip.name=Browser Tooltip
+
browserInternetExplorer=Internet Explorer
browserNetscape4=Netscape Communicator v4.x
browserNetscape7=Netscape v7.x
diff --git a/bundles/org.eclipse.ui.browser/plugin.xml b/bundles/org.eclipse.ui.browser/plugin.xml
index 8f63fb2..31d2e86 100644
--- a/bundles/org.eclipse.ui.browser/plugin.xml
+++ b/bundles/org.eclipse.ui.browser/plugin.xml
@@ -201,5 +201,37 @@
<location>Applications/Internet Explorer.app/Contents/MacOS/"Internet Explorer"</location>
</browser>
</extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ categoryId="org.eclipse.ui.category.window"
+ defaultHandler="org.eclipse.ui.internal.browser.OpenBrowserHandler"
+ description="%command.openBrowser.description"
+ id="org.eclipse.ui.browser.openBrowser"
+ name="%command.openBrowser.name">
+ <commandParameter
+ id="url"
+ name="%commandParameter.openBrowser.url.name"
+ optional="true"/>
+ <commandParameter
+ id="browserId"
+ name="%commandParameter.openBrowser.browserId.name"
+ optional="true"/>
+ <commandParameter
+ id="name"
+ name="%commandParameter.openBrowser.name.name"
+ optional="true"/>
+ <commandParameter
+ id="tooltip"
+ name="%commandParameter.openBrowser.tooltip.name"
+ optional="true"/>
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commandImages">
+ <image
+ commandId="org.eclipse.ui.browser.openBrowser"
+ icon="icons/obj16/internal_browser.gif"/>
+ </extension>
</plugin>
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui.browser/src/org/eclipse/ui/internal/browser/OpenBrowserHandler.java b/bundles/org.eclipse.ui.browser/src/org/eclipse/ui/internal/browser/OpenBrowserHandler.java
new file mode 100644
index 0000000..7861089
--- /dev/null
+++ b/bundles/org.eclipse.ui.browser/src/org/eclipse/ui/internal/browser/OpenBrowserHandler.java
@@ -0,0 +1,66 @@
+/*******************************************************************************
+ * Copyright (c) 2006 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.ui.internal.browser;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.browser.IWebBrowser;
+import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
+
+public class OpenBrowserHandler extends AbstractHandler {
+
+ private static final String PARAM_ID_URL = "url"; //$NON-NLS-1$
+
+ private static final String PARAM_ID_BROWSER_ID = "browserId"; //$NON-NLS-1$
+
+ private static final String PARAM_ID_NAME = "name"; //$NON-NLS-1$
+
+ private static final String PARAM_ID_TOOLTIP = "tooltip"; //$NON-NLS-1$
+
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+
+ String urlText = event.getParameter(PARAM_ID_URL);
+ URL url;
+ if (urlText == null) {
+ url = null;
+ } else {
+ try {
+ url = new URL(urlText);
+ } catch (MalformedURLException ex) {
+ throw new ExecutionException("malformed URL:" + urlText, ex); //$NON-NLS-1$
+ }
+ }
+
+ String browserId = event.getParameter(PARAM_ID_BROWSER_ID);
+ String name = event.getParameter(PARAM_ID_NAME);
+ String tooltip = event.getParameter(PARAM_ID_TOOLTIP);
+
+ try {
+ IWorkbenchBrowserSupport browserSupport = PlatformUI.getWorkbench()
+ .getBrowserSupport();
+ IWebBrowser browser = browserSupport.createBrowser(
+ IWorkbenchBrowserSupport.LOCATION_BAR
+ | IWorkbenchBrowserSupport.NAVIGATION_BAR,
+ browserId, name, tooltip);
+ browser.openURL(url);
+ } catch (PartInitException ex) {
+ throw new ExecutionException("error opening browser", ex); //$NON-NLS-1$
+ }
+
+ return null;
+ }
+}