Hi Sergey, The fix looks good to me.
-- best regards, Anthony On 07/19/2013 10:15 PM, Sergey Bylokhov wrote:
Hello, Please review the fix for jdk 8 and 7u40. The fix for JDK-8010906 don't take into account situation then first parent has no menu bar, but the second has. So it introduce the next scenario: #1. Open the window with File menu. #2. Open modal dialog1 =>File menu is disabled #3. Open modal dialog2 =>File menu disappears #4. Close dialog two #5. Close dialog one. File menu reappears, but File still disabled The steps #3. occurred, because CMenuBar.activate resets the current menubar if a passed javaMenuBar is null. The steps #5. occurred, because at step #3 we do not remove our nsmenu from the deleted NSMenuItem, when the appropriate NSMenuItem removed from mainMenu. So at step #5 we got a situation, when our nsmenu was added to the two different nsmenuitems: old(disabled) and new(enabled). Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8017189 Webrev can be found at: http://cr.openjdk.java.net/~serb/8017189/webrev.00