[Release] wrt_0.8.184
authorJihoon Chung <jihoon.chung@samsung.com>
Tue, 16 Apr 2013 07:13:07 +0000 (16:13 +0900)
committerJihoon Chung <jihoon.chung@samsung.com>
Tue, 16 Apr 2013 07:13:30 +0000 (16:13 +0900)
Change-Id: Ife9d05daa8d45acd320ee2429b87f1295a59bb6a

packaging/wrt.spec
src/view/common/view_logic_uri_support.cpp
src/wrt-client/wrt-client.cpp

index 7e202df..1a7aef2 100644 (file)
@@ -1,7 +1,7 @@
-#git:framework/web/wrt wrt_0.8.183
+#git:framework/web/wrt wrt_0.8.184
 Name:       wrt
 Summary:    web runtime
-Version:    0.8.183
+Version:    0.8.184
 Release:    1
 Group:      Development/Libraries
 License:    Apache License, Version 2.0
index 6725e25..be9f538 100644 (file)
@@ -181,29 +181,29 @@ std::string getAppServiceUri(bundle *bundle, WidgetModel *widgetModel)
 
     value = appsvc_get_uri(bundle);
     std::string uri = value ? value : "";
+    std::string scheme;
+
     if (uri.empty()) {
         LogError("Launch with no bundle data");
-        return std::string("");
-    }
-
-    // get scheme by iri
-    std::unique_ptr<iri_t> iri(iri_parse(uri.c_str()));
-    if (!iri.get()) {
-        LogDebug("Fail to get iri");
-        return std::string("");
-    }
-    std::string scheme;
-    if (iri->scheme) {
-        if (std::string(iri->scheme) != SCHEME_TYPE_FILE) {
-            scheme = iri->scheme;
+    } else {
+        // get scheme by iri
+        std::unique_ptr<iri_t> iri(iri_parse(uri.c_str()));
+        if (!iri.get()) {
+            LogDebug("Fail to get iri");
+            return std::string("");
+        }
+        if (iri->scheme) {
+            if (std::string(iri->scheme) != SCHEME_TYPE_FILE) {
+                scheme = iri->scheme;
+            }
+        }
+        if (iri->path) {
+            uri = iri->path;
         }
-    }
-    if (iri->path) {
-        uri = iri->path;
     }
 
     // get mime type by aul api in case of mime type is empty
-    if (mime.empty()) {
+    if (mime.empty() && !uri.empty()) {
         char mimetype[128] = {0,};
         if (AUL_R_OK ==
             aul_get_mime_from_file(uri.c_str(),
index f8ff1b5..dac620f 100644 (file)
@@ -35,6 +35,7 @@
 #include "webkit/bundles/plugin_module_support.h"
 #include <popup-runner/PopupInvoker.h>
 #include <prepare_external_storage.h>
+#include <vconf.h>
 
 #include "process_pool.h"
 #include "menu_db_util.h"
@@ -848,6 +849,13 @@ static Eina_Bool proces_pool_fd_handler(void* /*data*/, Ecore_Fd_Handler *handle
 }
 
 
+static void vconf_changed_handler(keynode_t *key, void *data)
+{
+    LogInfo("VCONFKEY_LANGSET vconf-key was changed!");
+
+    exit(-1);
+}
+
 void set_env()
 {
     // set evas backend type
@@ -871,7 +879,6 @@ void set_env()
     setenv("ELM_IMAGE_CACHE", "0", 1);
 }
 
-
 int main(int argc,
          char *argv[])
 {
@@ -918,6 +925,9 @@ int main(int argc,
                 exit(-1);
             }
 
+            // register language change callback
+            vconf_notify_key_changed(VCONFKEY_LANGSET, vconf_changed_handler, NULL);
+
             LogInfo("Prepare window_data");
             // Temporarily change HOME path to app
             // This change is needed for getting elementary profile
@@ -947,6 +957,9 @@ int main(int argc,
             ecore_main_loop_begin();
             LogDebug("ecore_main_loop_begin()_end");
 
+            // deregister language change callback
+            vconf_ignore_key_changed(VCONFKEY_LANGSET, vconf_changed_handler);
+
             std::string tizenId = WrtClient::getTizenIdFromArgument(argc, argv);
             PluginModuleSupport::init(s_preparedEwkContext, tizenId);