Emit active/inactive
authorKazumasa Mitsunari <knimitz@witz-inc.co.jp>
Wed, 12 Sep 2018 07:18:32 +0000 (16:18 +0900)
committerKazumasa Mitsunari <knimitz@witz-inc.co.jp>
Wed, 12 Sep 2018 07:18:32 +0000 (16:18 +0900)
Change-Id: I95fab49ce6fa63a2f849fc896a0fd1a19c2c14cd
Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
src/window_manager.cpp

index 2a50e76..1ab0291 100644 (file)
@@ -883,6 +883,9 @@ WMError WindowManager::startTransition(unsigned req_num)
         for (const auto &x : actions)
         {
             this->lc->visibilityChange(x);
+            string old_role = this->rolenew2old[x.role];
+            emit_deactivated(old_role.c_str());
+
             /* if (g_app_list.contains(x.appid))
             {
                 auto client = g_app_list.lookUpClient(x.appid);
@@ -923,6 +926,18 @@ WMError WindowManager::doEndDraw(unsigned req_num)
                 return ret;
             }
             ret = this->lc->visibilityChange(act);
+
+            // Emit active/deactive event
+            string old_role = this->rolenew2old[act.role];
+            if(act.visible == VISIBLE)
+            {
+                emit_activated(old_role.c_str());
+            }
+            else
+            {
+                emit_deactivated(old_role.c_str());
+            }
+
             if (ret != WMError::SUCCESS)
             {
                 HMI_SEQ_WARNING(req_num,