SystemSettings.LocaleTimeZone = timezoneId;
}
- public static string GetTimezoneName()
+ public static (string offset, string timezoneName) GetTimezoneName()
{
// DO NOT USE TimeZoneInfo localtimezone = TimeZoneInfo.Local;
// It take long time to sync TimeZoneInfo.Local after setting SystemSettings.LocaleTimeZone
TimeSpan time = localtimezone.GetUtcOffset(date);
string offset = time < TimeSpan.Zero ? time.ToString(@"\-hh\:mm") : time.ToString(@"\+hh\:mm");
- return $"GMT {offset}, {localtimezone.StandardName}";
+ return (offset, $"GMT {offset}, {localtimezone.StandardName}");
}
public class TimeZone
using Tizen.NUI.BaseComponents;
using Tizen.NUI.Components;
using Tizen.System;
+using Tizen;
namespace Setting.Menu
{
private SwitchListItem timeFormatItem = null;
private bool isAutomaticTimeUpdateSupported;
+ private string VconfTimezone = "db/setting/timezone";
protected override View OnCreate()
{
sections.Add(MainMenuProvider.DateTime_SetTime, mTimeItem);
}
- mTimezoneItem = TextListItem.CreatePrimaryTextItemWithSecondaryText(NUIGadgetResourceManager.GetString(nameof(Resources.IDS_ST_BODY_TIME_ZONE)), DateTimeTimezoneManager.GetTimezoneName());
+ mTimezoneItem = TextListItem.CreatePrimaryTextItemWithSecondaryText(NUIGadgetResourceManager.GetString(nameof(Resources.IDS_ST_BODY_TIME_ZONE)), DateTimeTimezoneManager.GetTimezoneName().timezoneName);
if (mTimezoneItem != null)
{
mTimezoneItem.Clicked += (o, e) =>
private void SystemSettings_LocaleTimeZoneChanged(object sender, LocaleTimeZoneChangedEventArgs e)
{
+ (string offset, string timezoneName) = DateTimeTimezoneManager.GetTimezoneName();
+
+ Vconf.SetString(VconfTimezone, offset);
+
if (mTimezoneItem != null)
- mTimezoneItem.Secondary = DateTimeTimezoneManager.GetTimezoneName();
+ {
+ mTimezoneItem.Secondary = timezoneName;
+ }
}
private void SystemSettings_LocaleTimeFormat24HourSettingChanged(object sender, LocaleTimeFormat24HourSettingChangedEventArgs e)