diff options
Diffstat (limited to 'src/components/application_manager/src/commands/mobile/register_app_interface_request.cc')
-rw-r--r-- | src/components/application_manager/src/commands/mobile/register_app_interface_request.cc | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc b/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc index 9843c30a3e..f13dc02f48 100644 --- a/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc +++ b/src/components/application_manager/src/commands/mobile/register_app_interface_request.cc @@ -312,11 +312,6 @@ void RegisterAppInterfaceRequest::Run() { SendRegisterAppInterfaceResponseToMobile(); } -void FillTTSRelatedFields(smart_objects::SmartObject& response_params, - const HMICapabilities& hmi_capabilities) { - response_params[strings::language] = hmi_capabilities.active_tts_language(); -} - void FillVRRelatedFields(smart_objects::SmartObject& response_params, const HMICapabilities& hmi_capabilities) { response_params[strings::language] = hmi_capabilities.active_vr_language(); @@ -334,6 +329,19 @@ void FillVIRelatedFields(smart_objects::SmartObject& response_params, } } +void FillTTSRelatedFields(smart_objects::SmartObject& response_params, + const HMICapabilities& hmi_capabilities) { + response_params[strings::language] = hmi_capabilities.active_tts_language(); + if (hmi_capabilities.speech_capabilities()) { + response_params[strings::speech_capabilities] = + *hmi_capabilities.speech_capabilities(); + } + if (hmi_capabilities.prerecorded_speech()) { + response_params[strings::prerecorded_speech] = + *(hmi_capabilities.prerecorded_speech()); + } +} + void FillUIRelatedFields(smart_objects::SmartObject& response_params, const HMICapabilities& hmi_capabilities) { response_params[strings::hmi_display_language] = @@ -502,9 +510,11 @@ void RegisterAppInterfaceRequest::SendRegisterAppInterfaceResponseToMobile() { *hmi_capabilities.hmi_zone_capabilities(); } } - if (hmi_capabilities.speech_capabilities()) { - response_params[strings::speech_capabilities] = - *hmi_capabilities.speech_capabilities(); + + if (HmiInterfaces::STATE_NOT_AVAILABLE != + application_manager_.hmi_interfaces().GetInterfaceState( + HmiInterfaces::HMI_INTERFACE_TTS)) { + FillTTSRelatedFields(response_params, hmi_capabilities); } if (hmi_capabilities.pcm_stream_capabilities()) { @@ -518,11 +528,6 @@ void RegisterAppInterfaceRequest::SendRegisterAppInterfaceResponseToMobile() { FillVIRelatedFields(response_params, hmi_capabilities); } - if (hmi_capabilities.prerecorded_speech()) { - response_params[strings::prerecorded_speech] = - *(hmi_capabilities.prerecorded_speech()); - } - const std::vector<uint32_t>& diag_modes = application_manager_.get_settings().supported_diag_modes(); if (!diag_modes.empty()) { |