Support localized/multi-resolution app icons 87/58487/3
authorJunghyun Yeon <jungh.yeon@samsung.com>
Mon, 1 Feb 2016 11:41:08 +0000 (20:41 +0900)
committerJunghyun Yeon <jungh.yeon@samsung.com>
Tue, 2 Feb 2016 10:06:40 +0000 (19:06 +0900)
Changes applied at
[manifest-parser][app-installer][pkgmgr-info]

Change-Id: Iaace9422f8098e30d98cfb6da53ec7aaa8fb4fce
Signed-off-by: Junghyun Yeon <jungh.yeon@samsung.com>
src/tpk_manifest_handlers/common/application_handler.cc
src/tpk_manifest_handlers/common/application_handler.h
src/tpk_manifest_handlers/ui_and_service_application_infos.h

index 8c6a825dc4f0737ed1ce88586e4f4a5366aa48f4..29f10c5fcd7331f3b6166641f33fb1a87d16a954 100644 (file)
@@ -27,6 +27,8 @@ const char kDataControlTypeKey[] = "@type";
 // icon
 const char kIconKey[] = "icon";
 const char kIconTextKey[] = "#text";
+const char kIconLangKey[] = "@lang";
+const char kIconDpiKey[] = "@dpi";
 
 // label
 const char kLabelKey[] = "label";
index cf065486cf00ba5f4e8b277e6510abbbda7d4252..42466ebeb00f87fc0334bc917c60da69b45dcd20 100644 (file)
@@ -156,8 +156,13 @@ bool ParseAppIcon(const parser::DictionaryValue& dict,
 
   if (!dict.GetString(tpk_app_keys::kIconTextKey, &icon_path))
     return true;
+  std::string xml_lang;
+  dict.GetString(tpk_app_keys::kIconLangKey, &xml_lang);
+
+  std::string dpi;
+  dict.GetString(tpk_app_keys::kIconDpiKey, &dpi);
 
-  info->app_icons.AddIcon(ApplicationIcon(icon_path));
+  info->app_icons.AddIcon(ApplicationIcon(icon_path, xml_lang, dpi));
 
   return true;
 }
index e8e0b74615c7e9df0c0724b49185122947366fe4..49153b2d24c01c18c975952028abf62560905ef4 100644 (file)
@@ -104,15 +104,25 @@ class MetaDataInfo : public parser::ManifestData {
 // Icon
 class ApplicationIcon  {
  public:
-  explicit ApplicationIcon(const std::string& path)
-                          : path_(path) {}
+  explicit ApplicationIcon(const std::string& path, const std::string& lang, const std::string& dpi)
+                          : path_(path), lang_(lang), dpi_(dpi) {}
 
   const std::string& path() const {
     return path_;
   }
 
+  const std::string& lang() const {
+    return lang_;
+  }
+
+  const std::string& dpi() const {
+    return dpi_;
+  }
+
  private:
   std::string path_;
+  std::string lang_;
+  std::string dpi_;
 };
 
 class ApplicationImage  {