- HMI_DEBUG("wm", "end draw %s", drawing_name);
- for (unsigned i = 0, iend = this->pending_end_draw.size(); i < iend; i++)
+ // get actions
+ bool found;
+ auto actions = g_app_list.getActions(req_num, &found);
+ WMError ret = WMError::SUCCESS;
+ if (!found)
+ {
+ ret = WMError::NO_ENTRY;
+ return ret;
+ }
+
+ HMI_SEQ_INFO(req_num, "do endDraw");
+
+ // layout change and make it visible
+ for (const auto &act : actions)
+ {
+ // layout change
+ if(!g_app_list.contains(act.appid)){
+ ret = WMError::NOT_REGISTERED;
+ }
+ ret = this->layoutChange(act);
+ if(ret != WMError::SUCCESS)
+ {
+ HMI_SEQ_WARNING(req_num, "Failed to manipulate surfaces while state change : %s", errorDescription(ret));
+ return ret;
+ }
+ ret = this->visibilityChange(act);
+ if (ret != WMError::SUCCESS)
+ {
+ HMI_SEQ_WARNING(req_num, "Failed to manipulate surfaces while state change : %s", errorDescription(ret));
+ return ret;
+ }
+ HMI_SEQ_DEBUG(req_num, "visible %s", act.role.c_str());
+ //this->lm_enddraw(act.role.c_str());
+ }
+
+ // Change current state
+ this->changeCurrentState(req_num);
+
+ HMI_SEQ_INFO(req_num, "emit flushDraw");
+
+ for(const auto &act_flush : actions)