// Copyright (c) 2013 GitHub, Inc. // Use of this source code is governed by the MIT license that can be // found in the LICENSE file. #include "base/callback.h" #include "base/mac/scoped_nsobject.h" #include "base/mac/scoped_sending_event.h" @interface AtomApplication : NSApplication { @private BOOL handlingSendEvent_; base::scoped_nsobject currentActivity_; NSCondition* handoffLock_; BOOL updateReceived_; base::Callback shouldShutdown_; } + (AtomApplication*)sharedApplication; - (void)setShutdownHandler:(base::Callback)handler; // CrAppProtocol: - (BOOL)isHandlingSendEvent; // CrAppControlProtocol: - (void)setHandlingSendEvent:(BOOL)handlingSendEvent; - (NSUserActivity*)getCurrentActivity; - (void)setCurrentActivity:(NSString*)type withUserInfo:(NSDictionary*)userInfo withWebpageURL:(NSURL*)webpageURL; - (void)invalidateCurrentActivity; - (void)updateCurrentActivity:(NSString*)type withUserInfo:(NSDictionary*)userInfo; @end