From 4cebc49bfa41af08169e43afa9fa63349d16b71b Mon Sep 17 00:00:00 2001 From: Heeyong Song Date: Wed, 8 Jun 2022 15:25:10 +0900 Subject: [PATCH] [Tizen] Change timing to get system values when needed Change-Id: I94f55f20083197635819968fb0ebf156bda1edd9 --- .../adaptor/tizen-wayland/framework-tizen.cpp | 47 ++++++++++++---------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/dali/internal/adaptor/tizen-wayland/framework-tizen.cpp b/dali/internal/adaptor/tizen-wayland/framework-tizen.cpp index 25a1b58..e8db582 100644 --- a/dali/internal/adaptor/tizen-wayland/framework-tizen.cpp +++ b/dali/internal/adaptor/tizen-wayland/framework-tizen.cpp @@ -193,23 +193,6 @@ struct Framework::Impl #endif mApplicationType = type; mCallbackManager = CallbackManager::New(); - - char* region = nullptr; - char* language = nullptr; - system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, ®ion); - system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &language); - - if(region != nullptr) - { - mRegion = std::string(region); - free(region); - } - - if(language != nullptr) - { - mLanguage = std::string(language); - free(language); - } } ~Impl() @@ -292,13 +275,35 @@ struct Framework::Impl mRegion = region; } - std::string GetLanguage() const + std::string GetLanguage() { + if(mLanguage.empty()) + { + char* language = nullptr; + system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &language); + + if(language != nullptr) + { + mLanguage = std::string(language); + free(language); + } + } return mLanguage; } - std::string GetRegion() const + std::string GetRegion() { + if(mRegion.empty()) + { + char* region = nullptr; + system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, ®ion); + + if(region != nullptr) + { + mRegion = std::string(region); + free(region); + } + } return mRegion; } @@ -306,8 +311,8 @@ struct Framework::Impl Type mApplicationType; CallbackBase* mAbortCallBack; CallbackManager* mCallbackManager; - std::string mLanguage; - std::string mRegion; + std::string mLanguage{}; + std::string mRegion{}; Framework* mFramework; AppCore::AppEventHandlerPtr handlers[5]; -- 2.7.4