Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Applet menus not responsive to key events in Safari



I have written an applet with JWindows, JMenubars, and JMenuItems. Running under Applet Viewer or under Firefox my menus are accessible via key events (e.g., Cmd-C, Cmd-V, etc.). However, under Safari this same applet's menus are unresponsive. Is there some additional step that Safari needs?

Here is an abridged copy of relevant menu setup code:

public class K5MenuBar extends JMenuBar implements MenuListener
	{
	// Edit menu commands
	public final static String kCommand_Cut = "Cut";
	public final static String kCommand_Copy = "Copy";
	public final static String kCommand_Paste = "Paste";
	public final static String kCommand_Clear = "Clear";
	public final static String kCommand_SelectAll = "Select All";

K5Window fWindow; // K5Window extends JFrame and implements ActionListener & WindowListener.

public K5MenuBar(K5Window iWindow)
{
fWindow = iWindow;


JMenu fileMenu, editMenu, objectsMenu, goMenu, viewMenu, windowsMenu, debugMenu;
JMenuItem menuItem;
int shortcutMask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();


		// Create the File menu.
		// omitted...

// Create the Edit menu.
editMenu = new JMenu("Edit");
editMenu.setMnemonic(KeyEvent.VK_E);
editMenu.getAccessibleContext().setAccessibleDescription("Edit menu");
this.add(editMenu);
// Cut menu item
menuItem = new JMenuItem(kCommand_Cut);
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, shortcutMask));
menuItem.getAccessibleContext().setAccessibleDescription("Cut");
menuItem.setEnabled(false);
menuItem.addActionListener(iWindow);
editMenu.add(menuItem);
// Copy menu item
menuItem = new JMenuItem(kCommand_Copy, KeyEvent.VK_C);
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, shortcutMask));
menuItem.getAccessibleContext().setAccessibleDescription("Copy");
menuItem.setEnabled(false);
menuItem.addActionListener(iWindow);
editMenu.add(menuItem);
// Paste menu item
menuItem = new JMenuItem(kCommand_Paste, KeyEvent.VK_V);
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, shortcutMask));
menuItem.getAccessibleContext().setAccessibleDescription("Paste");
menuItem.setEnabled(false);
menuItem.addActionListener(iWindow);
editMenu.add(menuItem);
// Clear menu item
menuItem = new JMenuItem(kCommand_Clear);
menuItem.getAccessibleContext().setAccessibleDescription("Clear");
menuItem.addActionListener(iWindow);
menuItem.setEnabled(false);
editMenu.add(menuItem);
// Select All menu item
menuItem = new JMenuItem(kCommand_SelectAll, KeyEvent.VK_A);
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, shortcutMask));
menuItem.getAccessibleContext().setAccessibleDescription("Select All");
menuItem.addActionListener(iWindow);
editMenu.add(menuItem);
// make this a listener for editMenu.
editMenu.addMenuListener(this);


		// Create other menus.
		// omitted...

	}

I imagine that there is a fairly simple explanation for this behavior... but I haven't been able to discover it.

Thanks in advance.
-Eric

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden

This email sent to email@hidden


Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.