# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1329597951 0 # Node ID 19af25f71e1fa57b3cdc913c7427cc176860c850 # Parent 1795bd78207df02fc1102d11e00725442a6cc068 Yet another fix attempt for mene item issues on Mac 10.5. diff -r 1795bd78207d -r 19af25f71e1f mac/dw.m --- a/mac/dw.m Tue Feb 14 00:33:49 2012 +0000 +++ b/mac/dw.m Sat Feb 18 20:45:51 2012 +0000 @@ -935,8 +935,20 @@ } -(void)setMenu:(NSMenu *)input { windowmenu = input; [windowmenu retain]; } -(void)menuHandler:(id)sender -{ - [DWObj performSelector:@selector(menuHandler:) withObject:sender afterDelay:0]; +{ + id menu = [sender menu]; + + /* Find the highest menu for this item */ + while([menu supermenu]) + { + menu = [menu supermenu]; + } + + /* Only perform the delay if this item is a child of the main menu */ + if([DWApp mainMenu] == menu) + [DWObj performSelector:@selector(menuHandler:) withObject:sender afterDelay:0]; + else + [DWObj menuHandler:sender]; _dw_wakeup_app(); } -(void)mouseDragged:(NSEvent *)theEvent { _event_handler(self, theEvent, 5); }