Support app:// for w3c privilege
authorJihoon Chung <jihoon.chung@samsung.com>
Thu, 28 Mar 2013 02:27:29 +0000 (11:27 +0900)
committerJihoon Chung <jihoon.chung@samsung.com>
Thu, 28 Mar 2013 06:28:33 +0000 (15:28 +0900)
[Issue#] N/A
[Problem] N/A
[Cause] N/A
[Solution] "file://" scheme is deprecated
Tizen2.1 uses "app://<app-id>" instead of "file://"
This commit changed display security origin in the "Exceptions Settings" menu
Before menu display "local" in case of origin is "file://"
Current menu will display "app://"+"origin" directly
[SCMRequest] N/A

Change-Id: Iff4b3f5ede7d935b12473f3e9fbbd1a13e92911e

webapp-detail/exceptionsview.cpp [changed mode: 0755->0644]

old mode 100755 (executable)
new mode 100644 (file)
index d8dd3f5..b4c6429
@@ -16,6 +16,7 @@
 
 #include "exceptionsview.h"
 
+#include <map>
 #include <vector>
 #include <string>
 #include <cstring>
@@ -24,6 +25,7 @@
 #include <dpl/foreach.h>
 #include <dpl/assert.h>
 #include <dpl/string.h>
+#include <dpl/wrt-dao-ro/widget_dao_types.h>
 #include <dpl/wrt-dao-ro/widget_dao_read_only.h>
 #include <wrt-commons/security-origin-dao/security_origin_dao.h>
 
@@ -45,8 +47,12 @@ const char* const ELM_GENLIST_ITEM_CLASS_STYLE_DEFAULT = "default";
 const char* const ELM_GENLIST_ITEM_CLASS_STYLE_3TEXT_1ICON = "3text.1icon";
 const char* const EVAS_SMART_CALLBACK_CLICKED = "clicked";
 // TEXT
-std::vector<std::string> featureText =
-    {"Geolocation", "Web Notification", "Web database", "FileSystem API"};
+std::map<WrtDB::Feature, std::string>  featureText = {
+    {WrtDB::FEATURE_GEOLOCATION, "Geolocation"},
+    {WrtDB::FEATURE_WEB_NOTIFICATION, "Web Notification"},
+    {WrtDB::FEATURE_USER_MEDIA, "User Media"},
+    {WrtDB::FEATURE_FULLSCREEN_MODE, "Fullscreen Mode"}
+};
 std::vector<std::string> resultText = {"Allow", "Deny"};
 const unsigned int INDEX_TEXT_ALLOW = 0;
 const unsigned int INDEX_TEXT_DENY = 1;
@@ -188,17 +194,12 @@ char* ExceptionsView::getTextCallback(
         return strdup(
             featureText[settingsData->m_originData.feature].c_str());
     } else if (partStr == ELM_PART_TEXT_2) {
-        // display host text
-        if (DPL::ToUTF8String(settingsData->m_originData.origin.scheme) ==
-                SCHEME_FILE)
-        {
-            // in case of file scheme, display "local"
-            return strdup(TEXT_LOCAL);
-        } else {
-            return strdup(
-                DPL::ToUTF8String(
-                    settingsData->m_originData.origin.host).c_str());
+        std::string url = DPL::ToUTF8String(settingsData->m_originData.origin.scheme);
+        if (!url.empty()) {
+            url += "://";
         }
+        url += DPL::ToUTF8String(settingsData->m_originData.origin.host);
+        return strdup(url.c_str());
     } else if (partStr == ELM_PART_TEXT_3) {
         // display result text
         Result result =