URI:
       tdevdraw: release multitouch mouse when app is collapsed (minimized) - plan9port - [fork] Plan 9 from user space
  HTML git clone git://src.adamsgaard.dk/plan9port
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 7d9c0f0f0e041051d3105404ada074cf983cd6ad
   DIR parent 100ec44e5170878bbd7fd28f7f68d884d0618173
  HTML Author: Russ Cox <rsc@swtch.com>
       Date:   Mon,  4 Jan 2010 21:25:07 -0800
       
       devdraw: release multitouch mouse when app is collapsed (minimized)
       
       R=rsc
       CC=plalonde, r
       http://codereview.appspot.com/181129
       
       Diffstat:
         M src/cmd/devdraw/osx-screen-carbon.m |      16 +++++++++++++++-
       
       1 file changed, 15 insertions(+), 1 deletion(-)
       ---
   DIR diff --git a/src/cmd/devdraw/osx-screen-carbon.m b/src/cmd/devdraw/osx-screen-carbon.m
       t@@ -60,6 +60,7 @@ struct {
                int infullscreen;
                int kalting;                // last keystroke was Kalt
                int touched;                // last mouse event was touchCallback
       +        int collapsed;                // parked in dock
                NSMutableArray* devicelist;
        } osx;
        
       t@@ -383,6 +384,8 @@ _screeninit(void)
                        { kEventClassCommand, kEventCommandProcess },
                        { kEventClassWindow, kEventWindowActivated },
                        { kEventClassWindow, kEventWindowDeactivated },
       +                { kEventClassWindow, kEventWindowCollapsed },
       +                { kEventClassWindow, kEventWindowExpanded },
                };
                const EventTypeSpec events[] = {
                        { kEventClassApplication, kEventAppShown },
       t@@ -517,13 +520,24 @@ eventhandler(EventHandlerCallRef next, EventRef event, void *arg)
                                break;
                        
                        case kEventWindowActivated:
       -                        activated(1);
       +                        if(!osx.collapsed)
       +                                activated(1);
                                return eventNotHandledErr;
                                                
                        case kEventWindowDeactivated:
                                activated(0);
                                return eventNotHandledErr;
        
       +                case kEventWindowCollapsed:
       +                        osx.collapsed = 1;
       +                        activated(0);
       +                        return eventNotHandledErr;
       +
       +                case kEventWindowExpanded:
       +                        osx.collapsed = 0;
       +                        activated(1);
       +                        return eventNotHandledErr;
       +
                        default:
                                return eventNotHandledErr;
                        }