diff --git a/Source/NSMenu.m b/Source/NSMenu.m index ee6e306fc..d0a594934 100644 --- a/Source/NSMenu.m +++ b/Source/NSMenu.m @@ -271,10 +271,9 @@ - (void) _setGeometry { NSRect screenFrame = [[NSScreen mainScreen] frame]; - NSRect proposedFrame = NSMakeRect(0, - screenFrame.size.height - - [_aWindow frame].size.height + - screenFrame.origin.y, + NSRect proposedFrame = NSMakeRect(NSMinX(screenFrame), + NSMaxY(screenFrame) - + [_aWindow frame].size.height, screenFrame.size.width, [_aWindow frame].size.height); proposedFrame = [[GSTheme theme] modifyRect: proposedFrame @@ -312,9 +311,10 @@ - (void) _setGeometry if ((_aWindow != nil) && ([_aWindow screen] != nil)) { - NSPoint origin = NSMakePoint(0, [[_aWindow screen] visibleFrame].size.height - - [_aWindow frame].size.height); - + NSRect visible = [[_aWindow screen] visibleFrame]; + NSPoint origin = NSMakePoint(NSMinX(visible), + NSMaxY(visible) - [_aWindow frame].size.height); + [_aWindow setFrameOrigin: origin]; [_bWindow setFrameOrigin: origin]; }