From 8a2d3458b48e6514caa5620f00772e48c7ed7531 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Tue, 8 Oct 2019 23:18:20 +0200 Subject: [PATCH] Ref T739, MacOS only mic. access style using #ifdef Although not required, "hide" mm code on other platforms (avoid CLANG warnings in QtC) --- src/blackmisc/macos/microphoneaccess.h | 1 + src/blackmisc/macos/microphoneaccess.mm | 28 +++++++++++++------------ 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/src/blackmisc/macos/microphoneaccess.h b/src/blackmisc/macos/microphoneaccess.h index c29fa0939..945dac6c8 100644 --- a/src/blackmisc/macos/microphoneaccess.h +++ b/src/blackmisc/macos/microphoneaccess.h @@ -21,6 +21,7 @@ namespace BlackMisc class BLACKMISC_EXPORT CMacOSMicrophoneAccess : public QObject { Q_OBJECT + public: //! Authorization status enum AuthorizationStatus diff --git a/src/blackmisc/macos/microphoneaccess.mm b/src/blackmisc/macos/microphoneaccess.mm index b4b5586b4..4001ae22f 100644 --- a/src/blackmisc/macos/microphoneaccess.mm +++ b/src/blackmisc/macos/microphoneaccess.mm @@ -7,44 +7,46 @@ */ #include "microphoneaccess.h" +#ifdef Q_OS_MAC #import +#endif namespace BlackMisc { -//#ifdef Q_OS_MAC - BlackMisc::CMacOSMicrophoneAccess::CMacOSMicrophoneAccess(QObject *parent) : QObject(parent) { } void CMacOSMicrophoneAccess::requestAccess() { +#ifdef Q_OS_MAC if (@available(macOS 10.14, *)) { NSString *mediaType = AVMediaTypeAudio; - [AVCaptureDevice requestAccessForMediaType:mediaType completionHandler:^(BOOL granted) - { - emit permissionRequestAnswered(granted); - }]; + [AVCaptureDevice requestAccessForMediaType:mediaType completionHandler: ^ (BOOL granted) + { + emit permissionRequestAnswered(granted); + }]; } else { emit permissionRequestAnswered(true); } - +#endif } CMacOSMicrophoneAccess::AuthorizationStatus CMacOSMicrophoneAccess::getAuthorizationStatus() { +#ifdef Q_OS_MAC if (@available(macOS 10.14, *)) { NSString *mediaType = AVMediaTypeAudio; AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:mediaType]; - if(authStatus == AVAuthorizationStatusAuthorized) + if (authStatus == AVAuthorizationStatusAuthorized) { return AuthorizationStatus::Authorized; } - else if(authStatus == AVAuthorizationStatusNotDetermined) + else if (authStatus == AVAuthorizationStatusNotDetermined) { return AuthorizationStatus::NotDetermined; } @@ -54,9 +56,9 @@ namespace BlackMisc { return AuthorizationStatus::Authorized; } - +#else + return AuthorizationStatus::NotDetermined; +#endif } - -// #endif -} +} // ns