summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKyungwook Tak <k.tak@samsung.com>2016-11-28 13:39:41 +0900
committerKyungwook Tak <k.tak@samsung.com>2016-11-28 13:41:26 +0900
commitde2f9b1e18939a2058857271541732b28d4aa783 (patch)
tree726230fc1e42ceab0a7924b3ce82de38c7bae9b5 /src
parent54a568a4697b3ae036b0769f59659dcc9615eb3e (diff)
parent5313f728c99986a0d1760b04424efec7ebc0924e (diff)
downloadcsr-framework-de2f9b1e18939a2058857271541732b28d4aa783.tar.gz
csr-framework-de2f9b1e18939a2058857271541732b28d4aa783.tar.bz2
csr-framework-de2f9b1e18939a2058857271541732b28d4aa783.zip
Release 2.2.1
Minor fixes - Fix button text ellipsis - Separate popup systemd configs - Fix doxygen warnings - Fix some rpmlint warnings Change-Id: I33dff96d35800341142afd986a298ef52410d00e Signed-off-by: Kyungwook Tak <k.tak@samsung.com>
Diffstat (limited to 'src')
-rwxr-xr-xsrc/CMakeLists.txt1
-rw-r--r--src/framework/main/csr-main.cpp3
-rw-r--r--src/framework/service/app-dirs.cpp81
-rw-r--r--src/framework/service/app-dirs.h33
-rw-r--r--src/framework/service/file-system.cpp30
-rw-r--r--src/framework/ui/popup/popup.cpp18
-rw-r--r--src/framework/ui/popup/popup.h2
-rwxr-xr-xsrc/framework/ui/res/po/as.po4
-rwxr-xr-xsrc/framework/ui/res/po/az.po4
-rwxr-xr-xsrc/framework/ui/res/po/be_BY.po4
-rwxr-xr-xsrc/framework/ui/res/po/bn.po4
-rwxr-xr-xsrc/framework/ui/res/po/bn_BD.po4
-rwxr-xr-xsrc/framework/ui/res/po/en.po4
-rwxr-xr-xsrc/framework/ui/res/po/en_US.po4
-rwxr-xr-xsrc/framework/ui/res/po/gu.po4
-rwxr-xr-xsrc/framework/ui/res/po/hi.po4
-rwxr-xr-xsrc/framework/ui/res/po/hy.po4
-rwxr-xr-xsrc/framework/ui/res/po/id.po4
-rwxr-xr-xsrc/framework/ui/res/po/jv.po4
-rwxr-xr-xsrc/framework/ui/res/po/ka.po4
-rwxr-xr-xsrc/framework/ui/res/po/kk.po4
-rwxr-xr-xsrc/framework/ui/res/po/kn.po4
-rwxr-xr-xsrc/framework/ui/res/po/ko_KR.po4
-rwxr-xr-xsrc/framework/ui/res/po/ky_KG.po4
-rwxr-xr-xsrc/framework/ui/res/po/ml.po4
-rwxr-xr-xsrc/framework/ui/res/po/mn_MN.po4
-rwxr-xr-xsrc/framework/ui/res/po/mr.po4
-rwxr-xr-xsrc/framework/ui/res/po/ms.po4
-rwxr-xr-xsrc/framework/ui/res/po/ne.po4
-rwxr-xr-xsrc/framework/ui/res/po/or.po4
-rwxr-xr-xsrc/framework/ui/res/po/pa.po4
-rwxr-xr-xsrc/framework/ui/res/po/ru_RU.po4
-rwxr-xr-xsrc/framework/ui/res/po/si.po4
-rwxr-xr-xsrc/framework/ui/res/po/su_ID.po4
-rwxr-xr-xsrc/framework/ui/res/po/ta.po4
-rwxr-xr-xsrc/framework/ui/res/po/te.po4
-rwxr-xr-xsrc/framework/ui/res/po/tg_TJ.po4
-rwxr-xr-xsrc/framework/ui/res/po/tk_TM.po5
-rwxr-xr-xsrc/framework/ui/res/po/uk.po4
-rwxr-xr-xsrc/framework/ui/res/po/ur.po4
-rwxr-xr-xsrc/framework/ui/res/po/uz.po4
-rwxr-xr-xsrc/framework/ui/res/po/xh.po4
-rwxr-xr-xsrc/framework/ui/res/po/zh_CN.po4
-rwxr-xr-xsrc/framework/ui/res/po/zu.po4
-rw-r--r--src/include/csr/csr-content-screening.h4
45 files changed, 287 insertions, 34 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a17ad25..8fe7fe3 100755
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -51,6 +51,7 @@ SET(${TARGET_CSR_SERVER}_SRCS
framework/service/fs-utils.cpp
framework/service/file-system.cpp
framework/service/app-deleter.cpp
+ framework/service/app-dirs.cpp
framework/service/iloader.cpp
framework/service/cs-loader.cpp
framework/service/wp-loader.cpp
diff --git a/src/framework/main/csr-main.cpp b/src/framework/main/csr-main.cpp
index 650ab64..dd9d036 100644
--- a/src/framework/main/csr-main.cpp
+++ b/src/framework/main/csr-main.cpp
@@ -21,6 +21,7 @@
*/
#include "service/server-service.h"
+#include "service/app-dirs.h"
#include "common/audit/logger.h"
int main(void)
@@ -28,6 +29,8 @@ int main(void)
try {
INFO("Start csr-server main!");
+ Csr::AppDirs::init();
+
Csr::ServerService service;
INFO("Let's start csr-server service!");
diff --git a/src/framework/service/app-dirs.cpp b/src/framework/service/app-dirs.cpp
new file mode 100644
index 0000000..16ec314
--- /dev/null
+++ b/src/framework/service/app-dirs.cpp
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+#include "service/app-dirs.h"
+
+#include <string>
+#include <mutex>
+
+namespace {
+
+inline std::regex _regex(const char *str)
+{
+ return std::regex(str, std::regex_constants::extended);
+}
+
+}
+
+namespace Csr {
+
+std::vector<std::regex> AppDirs::m_regex;
+
+const std::vector<std::regex> &AppDirs::get()
+{
+ return AppDirs::m_regex;
+}
+
+void AppDirs::init()
+{
+ static std::once_flag f;
+
+ std::call_once(f, []() { AppDirs::initOnce(); });
+}
+
+void AppDirs::initOnce()
+{
+#define __INS_REGEX(str) AppDirs::m_regex.emplace_back(_regex(str))
+
+#ifdef PLATFORM_VERSION_3
+ // internal storages
+ __INS_REGEX("^(" TZ_SYS_RW_APP "/([^/]+))"); // $TZ_SYS_RW_APP/{pkgid}/
+ __INS_REGEX("^(" TZ_SYS_RO_APP "/([^/]+))"); // $TZ_SYS_RO_APP/{pkgid}/
+ // (linked prefix)/home/{user}/(appdir)/{pkgid}/
+ __INS_REGEX("^(/home/([^/]+)/apps_rw/([^/]+))");
+ __INS_REGEX("^(/opt/usr/home/([^/]+)/apps_rw/([^/]+))");
+
+ // external storages
+ // (linked prefix)/sdcard/app2sd/{pkgid}/
+ // (linked prefix)/sdcard/app2sd/{user}/{pkgid}/
+ // (linked prefix)/sdcard/apps/{user}/apps_rw/{pkgid}/
+ __INS_REGEX("^(/sdcard/app2sd/([^/]+))");
+ __INS_REGEX("^(/sdcard/app2sd/([^/]+)/([^/]+))");
+ __INS_REGEX("^(/sdcard/apps/([^/]+)/apps_rw/([^/]+))");
+ __INS_REGEX("^(" TZ_SYS_STORAGE "/sdcard/app2sd/([^/]+))");
+ __INS_REGEX("^(" TZ_SYS_STORAGE "/sdcard/app2sd/([^/]+)/([^/]+))");
+ __INS_REGEX("^(" TZ_SYS_STORAGE "/sdcard/apps/([^/]+)/apps_rw/([^/]+))");
+#else
+ // internal storages
+ __INS_REGEX("^(/usr/apps/([^/]+))"); // /usr/apps/{pkgid}/
+ __INS_REGEX("^(/opt/usr/apps/([^/]+))"); // /opt/usr/apps/{pkgid}/
+
+ // external storages
+ __INS_REGEX("^(/sdcard/apps/([^/]+))"); // /sdcard/apps/{pkgid}/
+ __INS_REGEX("^(/sdcard/app2sd/([^/]+))"); // /sdcard/app2sd/{pkgid}/
+#endif
+
+#undef __INS_REGEX
+}
+
+}
diff --git a/src/framework/service/app-dirs.h b/src/framework/service/app-dirs.h
new file mode 100644
index 0000000..82bfcd9
--- /dev/null
+++ b/src/framework/service/app-dirs.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+#pragma once
+
+#include <vector>
+#include <regex>
+
+namespace Csr {
+
+class AppDirs {
+public:
+ static const std::vector<std::regex> &get();
+ static void init();
+
+private:
+ static void initOnce();
+ static std::vector<std::regex> m_regex;
+};
+
+}
diff --git a/src/framework/service/file-system.cpp b/src/framework/service/file-system.cpp
index 71a1528..19e0aaf 100644
--- a/src/framework/service/file-system.cpp
+++ b/src/framework/service/file-system.cpp
@@ -31,6 +31,7 @@
#include "common/audit/logger.h"
#include "common/exception.h"
#include "service/app-deleter.h"
+#include "service/app-dirs.h"
#include "service/fs-utils.h"
#include "service/dir-blacklist.h"
@@ -38,31 +39,6 @@
namespace Csr {
-namespace {
-
-inline std::regex makeRegexpr(const char *str)
-{
- return std::regex(str, std::regex_constants::extended);
-}
-
-std::vector<std::regex> g_regexprs{
-#ifdef PLATFORM_VERSION_3
- makeRegexpr("^(/opt/usr/apps/([^/]+))"), // /opt/usr/apps/{pkgid}/
- makeRegexpr("^(/home/([^/]+)/apps_rw/([^/]+))"), // /home/{user}/apps_rw/{pkgid}/
- makeRegexpr("^(/opt/home/([^/]+)/apps_rw/([^/]+))"), // /opt/home/{user}/apps_rw/{pkgid}/
- makeRegexpr("^(/sdcard/app2sd/([^/]+)/([^/]+))"), // /sdcard/app2sd/{user}/{pkgid}/
- makeRegexpr("^(/sdcard/app2sd/([^/]+))"), // /sdcard/app2sd/{pkgid}/
- makeRegexpr("^(/sdcard/apps/([^/]+)/apps_rw/([^/]+))") // /sdcard/apps/{user}/apps_rw/{pkgid}/
-#else
- makeRegexpr("^(/usr/apps/([^/]+))"), // /usr/apps/{pkgid}/
- makeRegexpr("^(/opt/usr/apps/([^/]+))"), // /opt/usr/apps/{pkgid}/
- makeRegexpr("^(/sdcard/apps/([^/]+))"), // /sdcard/apps/{pkgid}/
- makeRegexpr("^(/sdcard/app2sd/([^/]+))"), // /sdcard/app2sd/{pkgid}/
-#endif
-};
-
-} // namespace anonymous
-
int File::getPkgTypes(const std::string &user, const std::string &pkgid)
{
pkgmgrinfo_pkginfo_h handle;
@@ -104,7 +80,7 @@ std::string File::getPkgPath(const std::string &path)
{
std::smatch matched;
- for (const auto &rege : g_regexprs) {
+ for (const auto &rege : AppDirs::get()) {
if (!std::regex_search(path, matched, rege))
continue;
@@ -156,7 +132,7 @@ File::File(const std::string &fpath, const FilePtr &parentdir, int type,
std::smatch matched;
- for (const auto &rege : g_regexprs) {
+ for (const auto &rege : AppDirs::get()) {
if (!std::regex_search(this->m_path, matched, rege))
continue;
diff --git a/src/framework/ui/popup/popup.cpp b/src/framework/ui/popup/popup.cpp
index 85aaa56..46a0cd3 100644
--- a/src/framework/ui/popup/popup.cpp
+++ b/src/framework/ui/popup/popup.cpp
@@ -105,19 +105,27 @@ Popup::Popup(int buttonN)
elm_box_pack_end(m_box, m_footer);
evas_object_show(m_footer);
- elm_object_content_set(m_popup, m_box);
-
// Add buttons dynamically.
+ m_btnBox = elm_box_add(m_popup);
+ setDefaultProperties(m_btnBox);
+ elm_box_horizontal_set(m_btnBox, EINA_TRUE);
+ elm_box_padding_set(m_btnBox, 0, 0);
+
for(int i=1 ; i <= buttonN; i++) {
std::string id("button" + std::to_string(i));
Evas_Object *button = elm_button_add(m_popup);
elm_object_style_set(button, "bottom");
- elm_object_part_content_set(m_popup, id.c_str(), button);
+ setDefaultProperties(button);
+ elm_box_pack_end(m_btnBox, button);
evas_object_show(button);
-
m_buttons.emplace_back(button);
}
+ elm_box_pack_end(m_box, m_btnBox);
+ evas_object_show(m_btnBox);
+
+ elm_object_content_set(m_popup, m_box);
+
evas_object_show(m_popup);
evas_object_show(m_win);
}
@@ -196,7 +204,7 @@ void Popup::setRotationToWin(Evas_Object *win) noexcept
void Popup::setText(Evas_Object *obj, const std::string &text) noexcept
{
- // Eable text line-break automatically.
+ // Enable text line-break automatically.
elm_label_line_wrap_set(obj, ELM_WRAP_WORD);
elm_object_text_set(obj, text.c_str());
}
diff --git a/src/framework/ui/popup/popup.h b/src/framework/ui/popup/popup.h
index 8e6518c..4475d96 100644
--- a/src/framework/ui/popup/popup.h
+++ b/src/framework/ui/popup/popup.h
@@ -48,6 +48,7 @@ namespace Ui {
* | |
* | content(footer) |
* ====================
+ * |------btnBox------|
* | button(N) |
* --------------------
*/
@@ -92,6 +93,7 @@ private:
Evas_Object *m_popup;
Evas_Object *m_box;
Evas_Object *m_subBox;
+ Evas_Object *m_btnBox;
Evas_Object *m_header;
Evas_Object *m_body;
Evas_Object *m_footer;
diff --git a/src/framework/ui/res/po/as.po b/src/framework/ui/res/po/as.po
index 2ec700e..9bcc88f 100755
--- a/src/framework/ui/res/po/as.po
+++ b/src/framework/ui/res/po/as.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "খোলক"
diff --git a/src/framework/ui/res/po/az.po b/src/framework/ui/res/po/az.po
index 4afd434..80dc79d 100755
--- a/src/framework/ui/res/po/az.po
+++ b/src/framework/ui/res/po/az.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Aç"
diff --git a/src/framework/ui/res/po/be_BY.po b/src/framework/ui/res/po/be_BY.po
index 8b13c34..72c7bb5 100755
--- a/src/framework/ui/res/po/be_BY.po
+++ b/src/framework/ui/res/po/be_BY.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Адкрыць"
diff --git a/src/framework/ui/res/po/bn.po b/src/framework/ui/res/po/bn.po
index 200f539..348c239 100755
--- a/src/framework/ui/res/po/bn.po
+++ b/src/framework/ui/res/po/bn.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "খোলা"
diff --git a/src/framework/ui/res/po/bn_BD.po b/src/framework/ui/res/po/bn_BD.po
index f73ed2b..de3bd5d 100755
--- a/src/framework/ui/res/po/bn_BD.po
+++ b/src/framework/ui/res/po/bn_BD.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "খোলা"
diff --git a/src/framework/ui/res/po/en.po b/src/framework/ui/res/po/en.po
index c3cf64d..0400927 100755
--- a/src/framework/ui/res/po/en.po
+++ b/src/framework/ui/res/po/en.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Open"
diff --git a/src/framework/ui/res/po/en_US.po b/src/framework/ui/res/po/en_US.po
index b58284d..9dd7b15 100755
--- a/src/framework/ui/res/po/en_US.po
+++ b/src/framework/ui/res/po/en_US.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Open"
diff --git a/src/framework/ui/res/po/gu.po b/src/framework/ui/res/po/gu.po
index 93f4e9c..81d1539 100755
--- a/src/framework/ui/res/po/gu.po
+++ b/src/framework/ui/res/po/gu.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "ખોલો"
diff --git a/src/framework/ui/res/po/hi.po b/src/framework/ui/res/po/hi.po
index d57257b..8628406 100755
--- a/src/framework/ui/res/po/hi.po
+++ b/src/framework/ui/res/po/hi.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "खोलें"
diff --git a/src/framework/ui/res/po/hy.po b/src/framework/ui/res/po/hy.po
index 7770088..bfe5645 100755
--- a/src/framework/ui/res/po/hy.po
+++ b/src/framework/ui/res/po/hy.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Բացել"
diff --git a/src/framework/ui/res/po/id.po b/src/framework/ui/res/po/id.po
index 47f7503..484285a 100755
--- a/src/framework/ui/res/po/id.po
+++ b/src/framework/ui/res/po/id.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Buka"
diff --git a/src/framework/ui/res/po/jv.po b/src/framework/ui/res/po/jv.po
index be3c183..58b35a6 100755
--- a/src/framework/ui/res/po/jv.po
+++ b/src/framework/ui/res/po/jv.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Bukak"
diff --git a/src/framework/ui/res/po/ka.po b/src/framework/ui/res/po/ka.po
index 8dac323..1f33996 100755
--- a/src/framework/ui/res/po/ka.po
+++ b/src/framework/ui/res/po/ka.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "გახსნა"
diff --git a/src/framework/ui/res/po/kk.po b/src/framework/ui/res/po/kk.po
index b0221de..fcbca3c 100755
--- a/src/framework/ui/res/po/kk.po
+++ b/src/framework/ui/res/po/kk.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Ашу"
diff --git a/src/framework/ui/res/po/kn.po b/src/framework/ui/res/po/kn.po
index 6a600e6..2093569 100755
--- a/src/framework/ui/res/po/kn.po
+++ b/src/framework/ui/res/po/kn.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "ತೆರೆಯಿರಿ"
diff --git a/src/framework/ui/res/po/ko_KR.po b/src/framework/ui/res/po/ko_KR.po
index bfc4a4a..fc43560 100755
--- a/src/framework/ui/res/po/ko_KR.po
+++ b/src/framework/ui/res/po/ko_KR.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "열기"
diff --git a/src/framework/ui/res/po/ky_KG.po b/src/framework/ui/res/po/ky_KG.po
index 10a1f83..7968247 100755
--- a/src/framework/ui/res/po/ky_KG.po
+++ b/src/framework/ui/res/po/ky_KG.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Ачуу"
diff --git a/src/framework/ui/res/po/ml.po b/src/framework/ui/res/po/ml.po
index a980511..b7f637c 100755
--- a/src/framework/ui/res/po/ml.po
+++ b/src/framework/ui/res/po/ml.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "ഓപ്പണ്‍"
diff --git a/src/framework/ui/res/po/mn_MN.po b/src/framework/ui/res/po/mn_MN.po
index 9e0a6c1..60ae398 100755
--- a/src/framework/ui/res/po/mn_MN.po
+++ b/src/framework/ui/res/po/mn_MN.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Нээх"
diff --git a/src/framework/ui/res/po/mr.po b/src/framework/ui/res/po/mr.po
index fa75e3b..98f0bb5 100755
--- a/src/framework/ui/res/po/mr.po
+++ b/src/framework/ui/res/po/mr.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "उघडा"
diff --git a/src/framework/ui/res/po/ms.po b/src/framework/ui/res/po/ms.po
index b4b5e8f..cedabfa 100755
--- a/src/framework/ui/res/po/ms.po
+++ b/src/framework/ui/res/po/ms.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Buka"
diff --git a/src/framework/ui/res/po/ne.po b/src/framework/ui/res/po/ne.po
index c77bd89..4fa950c 100755
--- a/src/framework/ui/res/po/ne.po
+++ b/src/framework/ui/res/po/ne.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "खोल्नुहोस्"
diff --git a/src/framework/ui/res/po/or.po b/src/framework/ui/res/po/or.po
index f747f9f..cba3a1d 100755
--- a/src/framework/ui/res/po/or.po
+++ b/src/framework/ui/res/po/or.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "ଖୋଲନ୍ତୁ"
diff --git a/src/framework/ui/res/po/pa.po b/src/framework/ui/res/po/pa.po
index 8091349..700e39d 100755
--- a/src/framework/ui/res/po/pa.po
+++ b/src/framework/ui/res/po/pa.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "ਖੋਲ੍ਹੋ"
diff --git a/src/framework/ui/res/po/ru_RU.po b/src/framework/ui/res/po/ru_RU.po
index c6bbf13..242694f 100755
--- a/src/framework/ui/res/po/ru_RU.po
+++ b/src/framework/ui/res/po/ru_RU.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Открыть"
diff --git a/src/framework/ui/res/po/si.po b/src/framework/ui/res/po/si.po
index a3cf537..463f1ec 100755
--- a/src/framework/ui/res/po/si.po
+++ b/src/framework/ui/res/po/si.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "විවෘත කරන්න"
diff --git a/src/framework/ui/res/po/su_ID.po b/src/framework/ui/res/po/su_ID.po
index 7a480c3..6b33e9f 100755
--- a/src/framework/ui/res/po/su_ID.po
+++ b/src/framework/ui/res/po/su_ID.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Buka"
diff --git a/src/framework/ui/res/po/ta.po b/src/framework/ui/res/po/ta.po
index 92555ff..39f581a 100755
--- a/src/framework/ui/res/po/ta.po
+++ b/src/framework/ui/res/po/ta.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "திறக்கவும்"
diff --git a/src/framework/ui/res/po/te.po b/src/framework/ui/res/po/te.po
index 94d4496..d3dd097 100755
--- a/src/framework/ui/res/po/te.po
+++ b/src/framework/ui/res/po/te.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "తెరువు"
diff --git a/src/framework/ui/res/po/tg_TJ.po b/src/framework/ui/res/po/tg_TJ.po
index 037a1e4..1193aba 100755
--- a/src/framework/ui/res/po/tg_TJ.po
+++ b/src/framework/ui/res/po/tg_TJ.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Кушодан"
diff --git a/src/framework/ui/res/po/tk_TM.po b/src/framework/ui/res/po/tk_TM.po
index 7a10c47..778b9e7 100755
--- a/src/framework/ui/res/po/tk_TM.po
+++ b/src/framework/ui/res/po/tk_TM.po
@@ -1,3 +1,8 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Aç"
diff --git a/src/framework/ui/res/po/uk.po b/src/framework/ui/res/po/uk.po
index fd8403a..0565cf0 100755
--- a/src/framework/ui/res/po/uk.po
+++ b/src/framework/ui/res/po/uk.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Відкрити"
diff --git a/src/framework/ui/res/po/ur.po b/src/framework/ui/res/po/ur.po
index a11a900..70abf39 100755
--- a/src/framework/ui/res/po/ur.po
+++ b/src/framework/ui/res/po/ur.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "کھولیں"
diff --git a/src/framework/ui/res/po/uz.po b/src/framework/ui/res/po/uz.po
index e1e127f..1c6bd2d 100755
--- a/src/framework/ui/res/po/uz.po
+++ b/src/framework/ui/res/po/uz.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Ochish"
diff --git a/src/framework/ui/res/po/xh.po b/src/framework/ui/res/po/xh.po
index 3e0d1b0..acb7533 100755
--- a/src/framework/ui/res/po/xh.po
+++ b/src/framework/ui/res/po/xh.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Open"
diff --git a/src/framework/ui/res/po/zh_CN.po b/src/framework/ui/res/po/zh_CN.po
index 23631be..0f7a5fe 100755
--- a/src/framework/ui/res/po/zh_CN.po
+++ b/src/framework/ui/res/po/zh_CN.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "打开"
diff --git a/src/framework/ui/res/po/zu.po b/src/framework/ui/res/po/zu.po
index 7826ca2..7e8c078 100755
--- a/src/framework/ui/res/po/zu.po
+++ b/src/framework/ui/res/po/zu.po
@@ -1,3 +1,7 @@
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+
msgid "IDS_ST_BUTTON_OPEN"
msgstr "Open"
diff --git a/src/include/csr/csr-content-screening.h b/src/include/csr/csr-content-screening.h
index 618f03d..f989ff4 100644
--- a/src/include/csr/csr-content-screening.h
+++ b/src/include/csr/csr-content-screening.h
@@ -172,8 +172,8 @@ int csr_cs_set_core_usage(csr_cs_context_h handle, csr_cs_core_usage_e usage);
* @remarks If an engine does not support "scanning on cloud", this option is silently
* ignored.
*
- * @param[in] handle CSR CS context handle returned by csr_cs_context_create().
- * @param[int] scan_on_cloud Flag to turn on(#true) or off(#false) of scanning on cloud option.
+ * @param[in] handle CSR CS context handle returned by csr_cs_context_create().
+ * @param[in] scan_on_cloud Flag of scanning on cloud option.
*
* @return #CSR_ERROR_NONE on success, otherwise a negative error value
*