--- a/usr/src/java/vpanels/client/org/opensolaris/os/vp/client/swing/AppInstance.java Wed Dec 23 16:26:57 2009 -0500
+++ b/usr/src/java/vpanels/client/org/opensolaris/os/vp/client/swing/AppInstance.java Wed Dec 23 17:21:25 2009 -0500
@@ -294,6 +294,12 @@
public void showHelp() {
Window window = navigator.getLastWindow();
+ if (window == null) {
+ // Absurdly, the Swing help viewer needs a non-null window to show,
+ // even if that window is not visible
+ window = new Window(null);
+ }
+
ActionEvent event = new ActionEvent(
window, ActionEvent.ACTION_PERFORMED, "showHelp");
--- a/usr/src/java/vpanels/panel/org/opensolaris/os/vp/panel/swing/control/SystemTrayControl.java Wed Dec 23 16:26:57 2009 -0500
+++ b/usr/src/java/vpanels/panel/org/opensolaris/os/vp/panel/swing/control/SystemTrayControl.java Wed Dec 23 17:21:25 2009 -0500
@@ -28,6 +28,7 @@
import java.awt.*;
import java.awt.event.*;
+import java.net.URL;
import java.util.Map;
import org.opensolaris.os.vp.panel.common.*;
import org.opensolaris.os.vp.panel.common.action.ActionAbortedException;
@@ -157,6 +158,22 @@
});
popup.add(loginItem);
+ final URL url = getHelpURL();
+ if (url != null) {
+ MenuItem helpItem =
+ new MenuItem(Finder.getString("tray.popup.help"));
+ helpItem.addActionListener(
+ new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ ClientContext context = getClientContext();
+ context.getHelpBroker().setCurrentURL(url);
+ context.showHelp();
+ }
+ });
+ popup.add(helpItem);
+ }
+
MenuItem exitItem = new MenuItem(Finder.getString("tray.popup.exit"));
exitItem.addActionListener(
new ActionListener() {
--- a/usr/src/java/vpanels/panel/org/opensolaris/os/vp/panel/swing/control/resources/Resources.properties Wed Dec 23 16:26:57 2009 -0500
+++ b/usr/src/java/vpanels/panel/org/opensolaris/os/vp/panel/swing/control/resources/Resources.properties Wed Dec 23 17:21:25 2009 -0500
@@ -50,4 +50,5 @@
wizard.cancel.confirm.message = Cancel the running wizard?
tray.popup.login = Change host...
+tray.popup.help = Help...
tray.popup.exit = Exit