From 27d77de2d4b62da15c55191b9cd270ceb1649604 Mon Sep 17 00:00:00 2001 From: Romain Bertozzi <romain.bertozzi@savoirfairelinux.com> Date: Wed, 8 Mar 2017 14:57:24 -0500 Subject: [PATCH] ios: open signals for iOS platform This patch opens signals for the iOS platform. The signals that are opened are: - GetAppDataPath - GetHardwareAudioFormat Issue: #1540 Change-Id: Ia0a5d999aaf358a562fa8af58bc1c630fb1388f5 Reviewed-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com> --- src/client/ring_signal.cpp | 4 ++-- src/client/ring_signal.h | 4 ++++ src/dring/configurationmanager_interface.h | 8 ++++++-- src/fileutils.cpp | 14 +++++++------- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/client/ring_signal.cpp b/src/client/ring_signal.cpp index 9c5c8667df..b8fd4b083f 100644 --- a/src/client/ring_signal.cpp +++ b/src/client/ring_signal.cpp @@ -73,10 +73,10 @@ getSignalHandlers() exported_callback<DRing::ConfigurationSignal::MigrationEnded>(), exported_callback<DRing::ConfigurationSignal::DeviceRevocationEnded>(), exported_callback<DRing::ConfigurationSignal::Error>(), -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS exported_callback<DRing::ConfigurationSignal::GetHardwareAudioFormat>(), #endif -#if defined(__ANDROID__) || defined(RING_UWP) +#if defined(__ANDROID__) || TARGET_OS_IOS || defined(RING_UWP) exported_callback<DRing::ConfigurationSignal::GetAppDataPath>(), #endif diff --git a/src/client/ring_signal.h b/src/client/ring_signal.h index b88bc45022..13c7cc16be 100644 --- a/src/client/ring_signal.h +++ b/src/client/ring_signal.h @@ -35,6 +35,10 @@ #include "dring.h" #include "logger.h" +#ifdef __APPLE__ +#include <TargetConditionals.h> +#endif + #include <exception> #include <memory> #include <map> diff --git a/src/dring/configurationmanager_interface.h b/src/dring/configurationmanager_interface.h index 766fe0fe61..409e0b1af9 100644 --- a/src/dring/configurationmanager_interface.h +++ b/src/dring/configurationmanager_interface.h @@ -34,6 +34,10 @@ #include "dring.h" #include "security_const.h" +#ifdef __APPLE__ +#include <TargetConditionals.h> +#endif + namespace DRing { void registerConfHandlers(const std::map<std::string, std::shared_ptr<CallbackWrapperBase>>&); @@ -278,13 +282,13 @@ struct ConfigurationSignal { * These are special getters for Android and UWP, so the daemon can retreive * information only accessible through their respective platform APIs */ -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS struct GetHardwareAudioFormat { constexpr static const char* name = "GetHardwareAudioFormat"; using cb_type = void(std::vector<int32_t>* /* params_ret */); }; #endif -#if defined(__ANDROID__) || defined(RING_UWP) +#if defined(__ANDROID__) || defined(RING_UWP) || TARGET_OS_IOS struct GetAppDataPath { constexpr static const char* name = "GetAppDataPath"; using cb_type = void(const std::string& name, std::vector<std::string>* /* path_ret */); diff --git a/src/fileutils.cpp b/src/fileutils.cpp index 5e87286f13..c08336d215 100644 --- a/src/fileutils.cpp +++ b/src/fileutils.cpp @@ -37,7 +37,7 @@ #include <TargetConditionals.h> #endif -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS #include "client/ring_signal.h" #endif #ifdef _WIN32 @@ -175,7 +175,7 @@ create_pidfile() std::string expand_path(const std::string &path) { -#if defined __ANDROID__ || defined RING_UWP || defined WIN32 || TARGET_OS_IPHONE +#if defined __ANDROID__ || defined RING_UWP || defined WIN32 || TARGET_OS_IOS RING_ERR("Path expansion not implemented, returning original"); return path; #else @@ -417,7 +417,7 @@ FileHandle::~FileHandle() } } -#if defined(__ANDROID__) || defined(RING_UWP) +#if defined(__ANDROID__) || defined(RING_UWP) || TARGET_OS_IOS static std::string files_path; static std::string cache_path; static std::string config_path; @@ -451,7 +451,7 @@ get_cache_dir() return cache_home; } else { #endif -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS std::vector<std::string> paths; emitSignal<DRing::ConfigurationSignal::GetAppDataPath>("cache", &paths); if (not paths.empty()) @@ -473,7 +473,7 @@ get_cache_dir() std::string get_home_dir() { -#if defined __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS std::vector<std::string> paths; emitSignal<DRing::ConfigurationSignal::GetAppDataPath>("files", &paths); if (not paths.empty()) @@ -517,7 +517,7 @@ get_home_dir() std::string get_data_dir() { -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS std::vector<std::string> paths; emitSignal<DRing::ConfigurationSignal::GetAppDataPath>("files", &paths); if (not paths.empty()) @@ -553,7 +553,7 @@ get_data_dir() std::string get_config_dir() { -#ifdef __ANDROID__ +#if defined(__ANDROID__) || TARGET_OS_IOS std::vector<std::string> paths; emitSignal<DRing::ConfigurationSignal::GetAppDataPath>("config", &paths); if (not paths.empty()) -- GitLab