diff options
Diffstat (limited to 'src/components/application_manager/src/application_manager_impl.cc')
-rw-r--r-- | src/components/application_manager/src/application_manager_impl.cc | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/components/application_manager/src/application_manager_impl.cc b/src/components/application_manager/src/application_manager_impl.cc index f350c9fc5a..b0b05a3031 100644 --- a/src/components/application_manager/src/application_manager_impl.cc +++ b/src/components/application_manager/src/application_manager_impl.cc @@ -4493,8 +4493,17 @@ void ApplicationManagerImpl::OnUpdateHMIAppType( } if (flag_diffirence_app_hmi_type) { - (*it)->set_app_types(transform_app_hmi_types); - (*it)->ChangeSupportingAppHMIType(); + ApplicationSharedPtr app = *it; + + app->set_app_types(transform_app_hmi_types); + app->ChangeSupportingAppHMIType(); + + auto on_app_hmi_types_changed = [app]( + plugin_manager::RPCPlugin& plugin) { + plugin.OnApplicationEvent(plugin_manager::kAppHmiTypesChanged, app); + }; + ApplyFunctorForEachPlugin(on_app_hmi_types_changed); + const mobile_apis::HMILevel::eType app_hmi_level = (*it)->hmi_level(mobile_apis::PredefinedWindows::DEFAULT_WINDOW); if (app_hmi_level == mobile_api::HMILevel::HMI_BACKGROUND) { |