An anonymous comment was added to bug 881734 in j's SourceForge bug
tracker this weekend:
Comment By: Nobody/Anonymous (nobody)
Date: 2005-04-03 09:02
Message:
Logged In: NO
I have dynamic menus working - simply rebuilding the menu
under Apple's 1.4.2 java update now has the desired effect:
Frame.java:
public void setMenu()
{
final Mode mode = currentEditor.getMode();
final MenuBar oldMenuBar = (MenuBar) getJMenuBar();
if (oldMenuBar == null ||
Platform.isPlatformOS_X() ||
oldMenuBar.getMenuName() != mode.getMenuName()) {
setJMenuBar(mode.createMenuBar(this));
validate();
}
}
Since I don't have a Mac myself, I have no idea whether the suggested
change really works, or is a complete solution to the menus-on-OS-X
problem.
I've committed it anyway, since it seems reasonable, has no effect at
all on other platforms, and in the worst case should be only a very
minor performance hit on OS X even if it has no beneficial effect.
Note that the name of the relevant function in j's official source is
Platform.isPlatformMacOSX() rather than Platform.isPlatformOS_X().
If you have a Mac and would like to try this out once the change
propagates to anonymous CVS, I'd be interested to know the results.
Thanks for your support.
-Peter
|