tdevdraw: add forcedpi toggled by Fn+F3 on Mac - 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 55905845f3eeb3756f532484f1fd313b0ab2ca2a
 (DIR) parent 2589c5c6ee1f582810a037a934280b29fe8c5e55
 (HTM) Author: Russ Cox <rsc@swtch.com>
       Date:   Sun, 25 Nov 2012 23:38:14 -0500
       
       devdraw: add forcedpi toggled by Fn+F3 on Mac
       
       R=rsc
       http://codereview.appspot.com/6846104
       
       Diffstat:
         M src/cmd/devdraw/cocoa-screen.m      |       4 ++--
         M src/cmd/devdraw/cocoa-srv.c         |      12 ++++++++++++
         M src/cmd/devdraw/devdraw.c           |       6 +++++-
         M src/cmd/devdraw/devdraw.h           |       1 +
       
       4 files changed, 20 insertions(+), 3 deletions(-)
       ---
 (DIR) diff --git a/src/cmd/devdraw/cocoa-screen.m b/src/cmd/devdraw/cocoa-screen.m
       t@@ -399,8 +399,8 @@ initimg(void)
                return i;
        }
        
       -static void
       -resizeimg()
       +void
       +resizeimg(void)
        {
                [win.img release];
                _drawreplacescreenimage(initimg());
 (DIR) diff --git a/src/cmd/devdraw/cocoa-srv.c b/src/cmd/devdraw/cocoa-srv.c
       t@@ -367,6 +367,8 @@ abortcompose(void)
                        keystroke(Kalt);
        }
        
       +void resizeimg(void);
       +
        void
        keystroke(int c)
        {
       t@@ -379,6 +381,16 @@ keystroke(int c)
                        nk = 0;
                        return;
                }
       +        if(c == KF+3) {
       +                if(forcedpi)
       +                        forcedpi = 0;
       +                else if(displaydpi >= 200)
       +                        forcedpi = 100;
       +                else
       +                        forcedpi = 225;
       +                resizeimg();
       +                return;
       +        }
                if(!alting){
                        kputc(c);
                        return;
 (DIR) diff --git a/src/cmd/devdraw/devdraw.c b/src/cmd/devdraw/devdraw.c
       t@@ -11,6 +11,7 @@
        #include "devdraw.h"
        
        extern void _flushmemscreen(Rectangle);
       +int forcedpi = 0;
        int displaydpi = 100;
        
        #define NHASH (1<<5)
       t@@ -1101,7 +1102,10 @@ _drawmsgwrite(void *v, int n)
                                                err = "unknown query";
                                                goto error;
                                        case 'd':        /* dpi */
       -                                        fmtprint(&fmt, "%11d ", displaydpi);
       +                                        if(forcedpi)
       +                                                fmtprint(&fmt, "%11d ", forcedpi);
       +                                        else
       +                                                fmtprint(&fmt, "%11d ", displaydpi);
                                                break;
                                        }
                                }
 (DIR) diff --git a/src/cmd/devdraw/devdraw.h b/src/cmd/devdraw/devdraw.h
       t@@ -7,3 +7,4 @@ int mouseswap(int);
        void abortcompose(void);
        
        extern int displaydpi;
       +extern int forcedpi;