diff options
author | Shobhit Adlakha <adlakhashobhit@gmail.com> | 2019-09-17 13:44:53 -0400 |
---|---|---|
committer | Shobhit Adlakha <adlakhashobhit@gmail.com> | 2019-09-17 13:44:53 -0400 |
commit | 1d1c149c874a4cd79c993c34d22f0ec42cff9183 (patch) | |
tree | 9bbf384e189c1f0cff27519da3e5854560e5c2f5 | |
parent | 3ea6b1a35c2ff77220e2915ff9efdf6226115314 (diff) | |
download | sdl_core-fix/rc_capabilities_not_updated.tar.gz |
Add fix to update RC capabilities on OnSystemCapabilityUpdated(REMOTE_CONTROL)fix/rc_capabilities_not_updated
-rw-r--r-- | src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_bc_system_capability_updated_notification_from_hmi.cc | 42 |
1 files changed, 28 insertions, 14 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_bc_system_capability_updated_notification_from_hmi.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_bc_system_capability_updated_notification_from_hmi.cc index 6077425c07..f32aef1102 100644 --- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_bc_system_capability_updated_notification_from_hmi.cc +++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/hmi/on_bc_system_capability_updated_notification_from_hmi.cc @@ -106,20 +106,34 @@ void OnBCSystemCapabilityUpdatedNotificationFromHMI::Run() { const auto& system_capability = (*message_)[strings::msg_params][strings::system_capability]; - if (mobile_apis::SystemCapabilityType::DISPLAYS == - system_capability[strings::system_capability_type].asInt() && - system_capability.keyExists(strings::display_capabilities)) { - const auto result = ProcessSystemDisplayCapabilities( - system_capability[strings::display_capabilities]); - if (ProcessSystemDisplayCapabilitiesResult::FAIL == result) { - LOG4CXX_ERROR(logger_, - "Failed to process display capabilities. Notification will " - "be ignored"); - return; - } else if (ProcessSystemDisplayCapabilitiesResult::CAPABILITIES_CACHED == - result) { - LOG4CXX_TRACE(logger_, "Capabilities are being cached for resuming app"); - return; + + switch (system_capability[strings::system_capability_type].asInt()) { + case mobile_apis::SystemCapabilityType::DISPLAYS: { + if (system_capability.keyExists(strings::display_capabilities)) { + const auto result = ProcessSystemDisplayCapabilities( + system_capability[strings::display_capabilities]); + if (ProcessSystemDisplayCapabilitiesResult::FAIL == result) { + LOG4CXX_ERROR( + logger_, + "Failed to process display capabilities. Notification will " + "be ignored"); + return; + } else if (ProcessSystemDisplayCapabilitiesResult:: + CAPABILITIES_CACHED == result) { + LOG4CXX_TRACE(logger_, + "Capabilities are being cached for resuming app"); + return; + } + } + break; + } + case mobile_apis::SystemCapabilityType::REMOTE_CONTROL: { + if (system_capability.keyExists(strings::rc_capability)) { + LOG4CXX_DEBUG(logger_, "Updating RC Capabilities"); + hmi_capabilities_.set_rc_capability( + system_capability[strings::rc_capability]); + } + break; } } |