#include <unique_ptr.h>
#include <system/system_settings.h>
-#include <FBase.h>
#include <FBaseColArrayList.h>
#include <FBaseSysLog.h>
+#include <FBaseUtilStringUtil.h>
+#include <FIoFile.h>
+#include <FIo_FileImpl.h>
#include <FApp_AppInfo.h>
#include <FBase_StringConverter.h>
#include <FBase_NativeError.h>
namespace Tizen { namespace System
{
-//IDs for IPC
-static const int _SYSTEM_RESPONSE_DATA = 2;
-
//Reserved key
static const wchar_t* _SETTING_SCREEN_WALLPAPER = L"http://tizen.org/setting/screen.wallpaper";
static const wchar_t* _SETTING_SYSTEM_SOUND_VOLUME = L"SystemSoundVolume";
if(key == _FONTSIZE)
{
- if(_AppInfo::GetApiVersion() == _API_VERSION_2_0 && _AppInfo::IsOspCompat() == true)
+ if(_AppInfo::GetApiVersion() == _API_VERSION_2_0 && _AppInfo::IsOspCompat())
{
if(value == _FONT_SIZE_GIANT || value == _FONT_SIZE_HUGE)
{
InitSettingClient();
SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
r = pSettingClient->GetValue(key, value);
+
+ if(key == L"Wallpaper")
+ {
+ if(_AppInfo::GetApiVersion() == _API_VERSION_2_0 && _AppInfo::IsOspCompat())
+ {
+ String physicalFilePath = value;
+ r = Tizen::Io::_FileImpl::ConvertPhysicalToVirtualPath(physicalFilePath, value);
+ SysTryReturn(NID_SYS, r == E_SUCCESS, r, r, "[%s] It is failed to converting virtual path", GetErrorMessage(r));
+ }
+ }
}
return r;
}
_SettingInfoImpl::SetWallpaper(const Tizen::Base::String& filePath)
{
InitSettingClient();
+ result r = E_SUCCESS;
+
SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
- result r = pSettingClient->SetValue(_SETTING_SCREEN_WALLPAPER, filePath);
+
+ String physicalFilePath = filePath;
+
+ if(Tizen::App::_AppInfo::GetApiVersion() == _API_VERSION_2_0 && Tizen::App::_AppInfo::IsOspCompat())
+ {
+ r = Tizen::Io::_FileImpl::ConvertVirtualToPhysicalPath(filePath, physicalFilePath);
+ SysTryReturn(NID_SYS, r == E_SUCCESS, r, r, "[%s] It is failed to converting physical path", GetErrorMessage(r));
+ }
+
+ r = pSettingClient->SetValue(_SETTING_SCREEN_WALLPAPER, physicalFilePath);
if(r == E_INVALID_ARG)
r = E_FILE_NOT_FOUND;
_SettingInfoImpl::GetValueForPrivilegedKey(const String& key, bool& value)
{
InitSettingClient();
+
SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
return pSettingClient->GetValueForPrivilegedKey(key, value);
}
{
result r = E_SUCCESS;
if (key == _FONT_SIZE || key == _FONT_TYPE)
- {
+ {
r = SetValueForFont(key, value);
- }
+ }
else
{
InitSettingClient();
SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
- r = pSettingClient->SetValue(key, value);
+
+ if(key == _SETTING_SCREEN_WALLPAPER)
+ {
+ if(_AppInfo::GetApiVersion() == _API_VERSION_2_0 && _AppInfo::IsOspCompat())
+ {
+ String virtualFilePath = value;
+ r = Tizen::Io::_FileImpl::ConvertVirtualToPhysicalPath(virtualFilePath, value);
+ SysTryReturn(NID_SYS, r == E_SUCCESS, r, r, "[%s] It is failed to converting physical path", GetErrorMessage(r));
+ }
+ }
+ return pSettingClient->SetValue(key, value);
}
return r;
}
result
_SettingInfoImpl::SetRingtone(const Tizen::Base::String& filePath)
{
+ result r = E_SUCCESS;
InitSettingClient();
SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
- result r = pSettingClient->SetValue(_SETTING_SOUND_RINGTONE, filePath);
+ r = pSettingClient->SetValue(_SETTING_SOUND_RINGTONE, filePath);
if(r == E_INVALID_ARG)
r = E_FILE_NOT_FOUND;
result r = E_SUCCESS;
String key;
- InitSettingClient();
- SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
-
if (soundCategory == _SETTING_SYSTEM_SOUND_VOLUME)
{
key = _SETTING_SOUND_SYSTEM_VOLUME;
key = soundCategory;
}
+ InitSettingClient();
+ SysTryReturnResult(NID_SYS, pSettingClient != null, E_SYSTEM, "It is failed to intialize setting manager");
r = pSettingClient->SetValue(key, level);
if (r == E_OBJ_NOT_FOUND)