1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef BASE_CHROME_APPLICATION_MAC_H_ 6 #define BASE_CHROME_APPLICATION_MAC_H_ 7 8 #import <AppKit/AppKit.h> 9 10 #include "base/basictypes.h" 11 12 @interface CrApplication : NSApplication { 13 @private 14 BOOL handlingSendEvent_; 15 } 16 @property(readonly, 17 getter=isHandlingSendEvent, 18 nonatomic) BOOL handlingSendEvent; 19 20 + (NSApplication*)sharedApplication; 21 @end 22 23 namespace chrome_application_mac { 24 25 // Controls the state of |handlingSendEvent_| in the event loop so that it is 26 // reset properly. 27 class ScopedSendingEvent { 28 public: 29 ScopedSendingEvent(); 30 ~ScopedSendingEvent(); 31 32 private: 33 CrApplication* app_; 34 BOOL handling_; 35 DISALLOW_COPY_AND_ASSIGN(ScopedSendingEvent); 36 }; 37 38 } // chrome_application_mac 39 40 #endif // BASE_CHROME_APPLICATION_MAC_H_ 41