Using these two calls: NSRect nsRect = [screen frame]; CGRect cgRect = CGDisplayBounds (displayID);
I get for my two screens: NS x=0 y=0 w=2560 h=1600 // screen A CG x=0 y=0 w=2560 h=1600 NS x=-1920 y=184 w=1920 h=1200 // screen B CG x=-1920 y=216 w=1920 h=1200 It seems CG origin is Top, Left with y growing down, while NS is origin Bottom, Left, y growing up. So I convert CG to NS with: // Convert CG coordinates from (TL, y down) to (BL, y up) CGRect mainScreenRect = CGDisplayBounds (CGMainDisplayID ()); cgRect.origin.y = (cgRect.origin.y + cgRect.size.height - mainScreenRect.size.height) * -1; (216 + 1200 - 1600) * -1 = 184 Is there a system function that does this? NSRectFromCGRect does not do the coordinate conversion. Thanks, Trygve _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com