2023-09-25 10:32:56 +02:00
|
|
|
// stringlint:disable
|
|
|
|
|
2020-11-11 00:58:56 +01:00
|
|
|
#import "AppContext.h"
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
|
|
|
|
NSString *const OWSApplicationDidEnterBackgroundNotification = @"OWSApplicationDidEnterBackgroundNotification";
|
|
|
|
NSString *const OWSApplicationWillEnterForegroundNotification = @"OWSApplicationWillEnterForegroundNotification";
|
|
|
|
NSString *const OWSApplicationWillResignActiveNotification = @"OWSApplicationWillResignActiveNotification";
|
|
|
|
NSString *const OWSApplicationDidBecomeActiveNotification = @"OWSApplicationDidBecomeActiveNotification";
|
|
|
|
|
|
|
|
NSString *NSStringForUIApplicationState(UIApplicationState value)
|
|
|
|
{
|
|
|
|
switch (value) {
|
|
|
|
case UIApplicationStateActive:
|
|
|
|
return @"UIApplicationStateActive";
|
|
|
|
case UIApplicationStateInactive:
|
|
|
|
return @"UIApplicationStateInactive";
|
|
|
|
case UIApplicationStateBackground:
|
|
|
|
return @"UIApplicationStateBackground";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
static id<AppContext> currentAppContext = nil;
|
|
|
|
|
|
|
|
id<AppContext> CurrentAppContext(void)
|
|
|
|
{
|
|
|
|
return currentAppContext;
|
|
|
|
}
|
|
|
|
|
2022-08-24 09:33:10 +02:00
|
|
|
BOOL HasAppContext(void)
|
|
|
|
{
|
|
|
|
return (currentAppContext != nil);
|
|
|
|
}
|
|
|
|
|
2020-11-11 00:58:56 +01:00
|
|
|
void SetCurrentAppContext(id<AppContext> appContext)
|
|
|
|
{
|
|
|
|
// The main app context should only be set once.
|
|
|
|
//
|
|
|
|
// App extensions may be opened multiple times in the same process,
|
|
|
|
// so statics will persist.
|
|
|
|
currentAppContext = appContext;
|
|
|
|
}
|
|
|
|
|
|
|
|
#ifdef DEBUG
|
|
|
|
void ClearCurrentAppContextForTests()
|
|
|
|
{
|
|
|
|
currentAppContext = nil;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
void ExitShareExtension(void)
|
|
|
|
{
|
|
|
|
exit(0);
|
|
|
|
}
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|