tdevdraw: fix winsize (-W) on OS X - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 7e2a1983e7f39ce6fca05706959d0ea4a9f6961b
 (DIR) parent 354c6c32f14f723022eacdfc965b0c9857e787f4
 (HTM) Author: David Jeannot <djeannot24@gmail.com>
       Date:   Mon,  5 Mar 2012 15:38:59 -0500
       
       devdraw: fix winsize (-W) on OS X
       
       R=rsc
       CC=plan9port.codebot
       http://codereview.appspot.com/5749043
       
       Diffstat:
         M src/cmd/devdraw/cocoa-screen.m      |      16 +++++++++++-----
       
       1 file changed, 11 insertions(+), 5 deletions(-)
       ---
 (DIR) diff --git a/src/cmd/devdraw/cocoa-screen.m b/src/cmd/devdraw/cocoa-screen.m
       t@@ -237,6 +237,12 @@ attachscreen(char *label, char *winsize)
        }
        @end
        
       +double
       +min(double a, double b)
       +{
       +        return a<b? a : b;
       +}
       +
        enum
        {
                Winstyle = NSTitledWindowMask
       t@@ -254,6 +260,7 @@ makewin(char *s)
                int i, set;
        
                sr = [[NSScreen mainScreen] frame];
       +        r = [[NSScreen mainScreen] visibleFrame];
        
                if(s && *s){
                        if(parsewinsize(s, &wr, &set) < 0)
       t@@ -263,11 +270,10 @@ makewin(char *s)
                        set = 0;
                }
        
       -        /*
       -         * The origin is the left bottom corner for Cocoa.
       -         */
       -        r.origin.y = sr.size.height-wr.max.y;
       -        r = NSMakeRect(wr.min.x, r.origin.y, Dx(wr), Dy(wr));
       +        r.origin.x = wr.min.x;
       +        r.origin.y = sr.size.height-wr.max.y;        /* winsize is top-left-based */
       +        r.size.width = min(Dx(wr), r.size.width);
       +        r.size.height = min(Dy(wr), r.size.height);
                r = [NSWindow contentRectForFrameRect:r
                        styleMask:Winstyle];