X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fhs-vuiadapter.cpp;h=08efd6c99f7bece08205368b96c6815612d0fc21;hb=refs%2Fheads%2Fsandbox%2Fzheng_wenlong%2Fals2019_vertical;hp=e6837baa509a3fd5fbd840f0fe9d466c80f376cf;hpb=405a974acd1c2c19ae6e549e5c88aac2c1cb3ea5;p=apps%2Fagl-service-homescreen.git diff --git a/src/hs-vuiadapter.cpp b/src/hs-vuiadapter.cpp index e6837ba..08efd6c 100644 --- a/src/hs-vuiadapter.cpp +++ b/src/hs-vuiadapter.cpp @@ -172,7 +172,7 @@ void Vui_Navigation::set_destination(afb_api_t api, struct json_object *object) */ void Vui_Navigation::cancel_navigation(afb_api_t api, struct json_object *object) { - HS_ClientManager::instance()->pushEvent(_stopNavigation, nullptr); + HS_ClientManager::instance()->pushEvent(_stopNavigation, nullptr, _navigation); } /** @@ -188,7 +188,7 @@ void Vui_Navigation::cancel_navigation(afb_api_t api, struct json_object *object */ void Vui_Navigation::notify(afb_api_t api, std::string appid) { - this->removeListenAppId(appid); + AFB_INFO("recover appid=[%s].", appid.c_str()); if(isListenAppId(appid)) { if (appid == _poi) { m_start_flg.first = true; @@ -204,9 +204,10 @@ void Vui_Navigation::notify(afb_api_t api, std::string appid) return; } } + if(m_start_flg.first && m_start_flg.second) { clearListenAppSet(); - HS_ClientManager::instance()->removeListener(this); + // HS_ClientManager::instance()->removeListener(this); } } @@ -225,7 +226,7 @@ void Vui_Navigation::set_destination2poi(afb_api_t api) struct json_object *param = json_object_new_object(); json_object_object_add(param, _latitudeInDegrees, json_object_new_double(m_dest.first)); json_object_object_add(param, _longitudeInDegrees, json_object_new_double(m_dest.second)); - HS_ClientManager::instance()->pushEvent(_setDestination, param); + HS_ClientManager::instance()->pushEvent(_setDestination, param, _poi); } /** @@ -240,7 +241,7 @@ void Vui_Navigation::set_destination2poi(afb_api_t api) */ void Vui_Navigation::start_navigation(afb_api_t api) { - HS_ClientManager::instance()->pushEvent(_startNavigation, nullptr); + HS_ClientManager::instance()->pushEvent(_startNavigation, nullptr, _navigation); HS_ClientManager::instance()->pushEvent("showWindow", nullptr, _navigation); } @@ -282,6 +283,9 @@ void HS_VuiAdapter::init(afb_api_t api) AFB_INFO("%s api isn't existing.", _vshl_capabilities); return; } + else { + AFB_INFO("%s api is existing.", _vshl_capabilities); + } std::string uid = std::string(_vui_prefixe) + std::string("-") + _navigation; module_list[uid] = new Vui_Navigation(uid);