The role "video" can be shown in split area for ALS
[apps/agl-service-windowmanager.git] / src / app.cpp
index 777a07f..07aab0b 100644 (file)
@@ -287,21 +287,26 @@ void App::allocateWindowResource(char const *event, char const *drawing_name,
         // This process will be removed
         // because the area "normal.full" and "normalfull" will be prohibited
         {
-            if (nullptr == drawing_area) {
-                new_area = "normal";
-            }
-            else if (0 == strcmp("normal.full", drawing_area)) {
-                new_area = "normal";
-            }
-            else if (0 == strcmp("restriction.split.sub", drawing_area)) {
-                new_area = "restriction.split.sub";
-            }
-            else if (0 == strcmp("homescreen", new_role)) {
-                // Now homescreen specifies "normalfull"
-                new_area = "full";
+            if (0 == strcmp("Restriction", drawing_name)) {
+                new_area = drawing_area;
             }
             else {
-                new_area = "normal";
+                if (nullptr == drawing_area) {
+                    new_area = "normal";
+                }
+                else if (0 == strcmp("normal.full", drawing_area)) {
+                    new_area = "normal";
+                }
+                else if (0 == strcmp("restriction.split.sub", drawing_area)) {
+                    new_area = "restriction.split.sub";
+                }
+                else if (0 == strcmp("homescreen", new_role)) {
+                    // Now homescreen specifies "normalfull"
+                    new_area = "full";
+                }
+                else {
+                    new_area = "normal";
+                }
             }
             HMI_DEBUG("wm", "drawing_area:%s, new_area: %s", drawing_area, new_area);
         }
@@ -855,6 +860,8 @@ void App::deactivate(int id) {
       }
       // <<< FOR CES DEMO
 
+      this->layout_commit();
+
       this->emit_deactivated(label);
       this->emit_invisible(label);
    }
@@ -1069,9 +1076,9 @@ int App::loadAppDb() {
     }
 
     // Load app.db
-    HMI_DEBUG("wm", "file_name:%s", file_name.c_str());
-    json_object* json_obj = json_object_from_file(file_name.c_str());
-    if (nullptr == json_obj) {
+    json_object* json_obj;
+    int ret = jh::inputJsonFilie(file_name.c_str(), &json_obj);
+    if (0 > ret) {
         HMI_ERROR("wm", "Could not open app.db, so use default role information");
         json_obj = json_tokener_parse(kDefaultAppDb);
     }