X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?p=apps%2Fagl-service-windowmanager-2017.git;a=blobdiff_plain;f=src%2Fwindow_manager.cpp;fp=src%2Fwindow_manager.cpp;h=fb35ab060284aad2d810e719de284fed4dde1723;hp=15f55f0877b0a89db40f7ef3eb73a1ba7247a436;hb=e4fcbf1b100ec2d926f7fbba5b1246336d05d436;hpb=2796f54cf0b80ce180542198de2b2465f9d98d95 diff --git a/src/window_manager.cpp b/src/window_manager.cpp index 15f55f0..fb35ab0 100644 --- a/src/window_manager.cpp +++ b/src/window_manager.cpp @@ -1102,6 +1102,15 @@ WMError WindowManager::setInvisibleTask(const std::string &role, bool split) { unsigned req_num = g_app_list.currentRequestNumber(); HMI_SEQ_DEBUG(req_num, "set current visible app to invisible task"); + bool found = false; + auto trigger = g_app_list.getRequest(req_num, &found); + // I don't check found == true here because this is checked in caller. + if(trigger.role == "homescreen") + { + HMI_SEQ_INFO(req_num, "In case of 'homescreen' visible, don't change app to invisible"); + return WMError::SUCCESS; + } + // This task is copied from original actiavete surface const char *drawing_name = this->rolenew2old[role].c_str(); auto const &surface_id = this->lookup_id(role.c_str()); @@ -1113,7 +1122,6 @@ WMError WindowManager::setInvisibleTask(const std::string &role, bool split) int surface; TaskVisible task_visible = TaskVisible::INVISIBLE; bool end_draw_finished = true; - bool found = false; for (auto const &l : this->layers.mapping) {