diff --git a/configuration.c b/configuration.c index 3ebfd1340d..5afa238e5e 100644 --- a/configuration.c +++ b/configuration.c @@ -70,7 +70,7 @@ #include "switch_performance_profiles.h" #endif -#if IOS +#if __APPLE__ #include "ui/drivers/cocoa/apple_platform.h" #endif @@ -2880,7 +2880,7 @@ void config_set_defaults(void *data) load_timezone(settings->arrays.timezone); #endif -#if IOS +#if __APPLE__ configuration_set_bool(settings, settings->bools.accessibility_enable, RAIsVoiceOverRunning()); #endif diff --git a/ui/drivers/cocoa/apple_platform.h b/ui/drivers/cocoa/apple_platform.h index 72316c79e3..d50323971c 100644 --- a/ui/drivers/cocoa/apple_platform.h +++ b/ui/drivers/cocoa/apple_platform.h @@ -1,10 +1,7 @@ #ifndef COCOA_APPLE_PLATFORM_H #define COCOA_APPLE_PLATFORM_H -#if TARGET_OS_IPHONE -/* this comes from UIKit but you cannot #include UIKit from C */ extern bool RAIsVoiceOverRunning(void); -#endif #if TARGET_OS_TV #include "config_file.h" diff --git a/ui/drivers/cocoa/cocoa_common.m b/ui/drivers/cocoa/cocoa_common.m index f82d995dfb..3422ef7dde 100644 --- a/ui/drivers/cocoa/cocoa_common.m +++ b/ui/drivers/cocoa/cocoa_common.m @@ -62,6 +62,14 @@ extern bool RAIsVoiceOverRunning(void) { return UIAccessibilityIsVoiceOverRunning(); } +#elif OSX +#import +extern bool RAIsVoiceOverRunning(void) +{ + if (@available(macOS 10.13, *)) + return [[NSWorkspace sharedWorkspace] isVoiceOverEnabled]; + return false; +} #endif #if defined(HAVE_COCOA_METAL) || defined(HAVE_COCOATOUCH)