From 838cc9d5b025fb1f9e48f7dffacd1a32fabdd045 Mon Sep 17 00:00:00 2001 From: Lukasz Stanislawski Date: Tue, 7 Nov 2017 16:43:30 +0100 Subject: [PATCH] Fix translations. Explicite bind textdomain to avoid having splitting translation files. Change-Id: I870d7573cebc6c600ab324feaddade7381b97fb2 --- clock-common/inc/Common/Defines.h | 3 ++- clock-common/inc/Utils/TizenApp.h | 8 ++++++++ clock-common/src/Utils/TizenApp.cpp | 7 +++++++ clock-ring/src/Ring.cpp | 3 +++ clock-ring/tizen-manifest.xml | 4 ++-- clock/src/Clock.cpp | 4 ++++ 6 files changed, 26 insertions(+), 3 deletions(-) diff --git a/clock-common/inc/Common/Defines.h b/clock-common/inc/Common/Defines.h index 42c02cc..f8ab5cc 100644 --- a/clock-common/inc/Common/Defines.h +++ b/clock-common/inc/Common/Defines.h @@ -18,8 +18,9 @@ #define _CLOCK_COMMON_DEFINES_H_ #define PACKAGE_CLOCK "org.tizen.clock" -#define PACKAGE_RING "org.tizen.clock-ring" +#define PACKAGE_RING "org.tizen.clock.ring" +#define TEXT_DOMAIN "clock" #define APP_CONTROL_OPERATION_TIMEOUT "http://tizen.org/appcontrol/operation/timeout" #define APP_CONTROL_OPERATION_ALARM "http://tizen.org/appcontrol/operation/alarm" #define RINGTONE_APP_PACKAGE_ID "org.tizen.setting-ringtone" diff --git a/clock-common/inc/Utils/TizenApp.h b/clock-common/inc/Utils/TizenApp.h index 264e9f5..fa948dd 100644 --- a/clock-common/inc/Utils/TizenApp.h +++ b/clock-common/inc/Utils/TizenApp.h @@ -78,6 +78,14 @@ class EXPORT_API TizenApp { virtual bool OnCreate() { return false; }; /** + * @brief binds and use text domain + * + * @param[in] domain Text domain main + * @param[in] path locale path + */ + void UseTextDomain(const char *domain, const char *locale_path); + + /** * @brief Run Tizen application main loop */ int Run(int argc, char **argv); diff --git a/clock-common/src/Utils/TizenApp.cpp b/clock-common/src/Utils/TizenApp.cpp index 30df297..13d4bf8 100644 --- a/clock-common/src/Utils/TizenApp.cpp +++ b/clock-common/src/Utils/TizenApp.cpp @@ -1,3 +1,4 @@ +#include #include "Utils/TizenApp.h" #include "Utils/Log.h" @@ -47,6 +48,12 @@ ui_app_lang_changed(app_event_info_h event_info, void *data) app->OnLanguageChanged(event_info); } +void TizenApp::UseTextDomain(const char *domain, const char *path) +{ + bindtextdomain(domain, path); + textdomain(domain); +} + int TizenApp::Run(int argc, char **argv) { int ret = 0; diff --git a/clock-ring/src/Ring.cpp b/clock-ring/src/Ring.cpp index ff571d9..d846343 100644 --- a/clock-ring/src/Ring.cpp +++ b/clock-ring/src/Ring.cpp @@ -20,6 +20,7 @@ #include "app.h" #include "Ring.h" #include "Utils/TizenApp.h" +#include "Utils/TizenAppUtils.h" #include "Utils/SystemSettings.h" bool RingApp::OnCreate() @@ -33,6 +34,8 @@ bool RingApp::OnCreate() provider_ = new common::AlarmProvider(); ring_ctrl_ = new controller::RingController(provider_->GetAlarms()); + UseTextDomain(TEXT_DOMAIN, utils::TizenAppUtils::GetResourcePath(utils::TizenAppUtils::APP_DIR_RESOURCE, "locale")); + return true; } diff --git a/clock-ring/tizen-manifest.xml b/clock-ring/tizen-manifest.xml index 95b0feb..288fcbd 100644 --- a/clock-ring/tizen-manifest.xml +++ b/clock-ring/tizen-manifest.xml @@ -1,7 +1,7 @@ - + - + clock-ring.png diff --git a/clock/src/Clock.cpp b/clock/src/Clock.cpp index a6715fe..69ca194 100644 --- a/clock/src/Clock.cpp +++ b/clock/src/Clock.cpp @@ -21,6 +21,8 @@ #include "Clock.h" #include "Utils/TizenApp.h" #include "Utils/SystemSettings.h" +#include "Utils/TizenAppUtils.h" +#include "Common/Defines.h" bool ClockApp::OnCreate() { @@ -33,6 +35,8 @@ bool ClockApp::OnCreate() provider_ = new common::AlarmProvider(); main_ctrl_ = new controller::MainController(provider_); + UseTextDomain(TEXT_DOMAIN, utils::TizenAppUtils::GetResourcePath(utils::TizenAppUtils::APP_DIR_RESOURCE, "locale")); + return true; } -- 2.7.4