summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjiangmin <jiangmin@codeaurora.org>2014-02-10 18:10:33 +0800
committerAdnan Begovic <adnan@cyngn.com>2014-08-25 19:38:27 +0000
commit109e7145d7f34d1797c95a30998a015059da4ec7 (patch)
treef937d12392d9661a1b97cd2d0c00a7849752d730
parent85b83cc9c9e2abade649132ed0adfaffec91d3de (diff)
downloadandroid_packages_apps_DeskClock-109e7145d7f34d1797c95a30998a015059da4ec7.tar.gz
android_packages_apps_DeskClock-109e7145d7f34d1797c95a30998a015059da4ec7.tar.bz2
android_packages_apps_DeskClock-109e7145d7f34d1797c95a30998a015059da4ec7.zip
WorldClock: Add some worldwide cities and update timezone
Add some cities info to xml. When local is changed, the timezone in setting page should be refreshed. Change-Id: If13beeb3c92227f67819f016e4631913fc6daca7
-rw-r--r--res/values-zh-rCN/array.xml40
-rw-r--r--res/values/array.xml120
-rw-r--r--src/com/android/deskclock/SettingsActivity.java24
3 files changed, 183 insertions, 1 deletions
diff --git a/res/values-zh-rCN/array.xml b/res/values-zh-rCN/array.xml
index c40756886..f266a19c4 100644
--- a/res/values-zh-rCN/array.xml
+++ b/res/values-zh-rCN/array.xml
@@ -317,5 +317,45 @@
<item msgid="8613864994547669100">"特古西加尔巴"</item>
<item msgid="7087691675228926801">"帕拉马里博"</item>
<item msgid="478384295484578701">"基多"</item>
+ <item>"马朱罗"</item>
+ <item>"中途岛"</item>
+ <item>"提华纳"</item>
+ <item>"凤凰城"</item>
+ <item>"里贾纳"</item>
+ <item>"马瑙斯"</item>
+ <item>"阿拉瓜伊纳"</item>
+ <item>"戈特霍布"</item>
+ <item>"南乔治亚"</item>
+ <item>"亚述尔群岛"</item>
+ <item>"温得和克"</item>
+ <item>"布拉扎维"</item>
+ <item>"内罗毕"</item>
+ <item>"第比利斯"</item>
+ <item>"埃里温"</item>
+ <item>"乌拉尔"</item>
+ <item>"叶卡捷琳堡"</item>
+ <item>"克拉斯诺亚尔斯克"</item>
+ <item>"伊尔库兹克"</item>
+ <item>"雅库兹克"</item>
+ <item>"霍巴特"</item>
+ <item>"马加丹"</item>
+ <item>"东加塔布"</item>
+ <item>"阿克拉维克"</item>
+ <item>"蒙哥马利"</item>
+ <item>"华盛顿哥伦比亚特区"</item>
+ <item>"拉帕兹"</item>
+ <item>"圣约翰斯"</item>
+ <item>"日内瓦"</item>
+ <item>"敖德萨"</item>
+ <item>"喀土穆"</item>
+ <item>"亚丁"</item>
+ <item>"阿布扎比"</item>
+ <item>"塔什干"</item>
+ <item>"新德里"</item>
+ <item>"柯尔喀塔"</item>
+ <item>"苏瓦"</item>
+ <item>"惠灵顿"</item>
+ <item>"查塔姆群岛"</item>
+ <item>"符拉迪沃斯托克"</item>
</string-array>
</resources>
diff --git a/res/values/array.xml b/res/values/array.xml
index a6858432f..87a5d76f2 100644
--- a/res/values/array.xml
+++ b/res/values/array.xml
@@ -315,6 +315,46 @@
<item>Tegucigalpa</item>
<item>Paramaribo</item>
<item>Quito</item>
+ <item>Marshall Islands</item>
+ <item>Midway Island</item>
+ <item>Tijuana</item>
+ <item>Phoenix</item>
+ <item>Regina</item>
+ <item>Manaus</item>
+ <item>Araguaina</item>
+ <item>Godthab</item>
+ <item>South_Georgia</item>
+ <item>Azores</item>
+ <item>Windhoek</item>
+ <item>Brazzaville</item>
+ <item>Nairobi</item>
+ <item>Tbilisi</item>
+ <item>Yerevan</item>
+ <item>Oral</item>
+ <item>Yekaterinburg</item>
+ <item>Krasnoyarsk</item>
+ <item>Irkutsk</item>
+ <item>Yakutsk</item>
+ <item>Hobart</item>
+ <item>Magadan</item>
+ <item>Tongatapu</item>
+ <item>Aklavik</item>
+ <item>Montgomery</item>
+ <item>Washington_DC</item>
+ <item>La_Paz</item>
+ <item>St_Johns</item>
+ <item>Geneva</item>
+ <item>Odesa</item>
+ <item>Khartoum</item>
+ <item>Aden</item>
+ <item>Abu_Dhabi</item>
+ <item>Tashkent</item>
+ <item>New_Delhi</item>
+ <item>Calcutta</item>
+ <item>Suva</item>
+ <item>Wellington</item>
+ <item>Chatham</item>
+ <item>Vladivostok</item>
</string-array>
<string-array name="cities_tz" translatable="false">
@@ -617,6 +657,46 @@
<item>America/Tegucigalpa</item>
<item>America/Paramaribo</item>
<item>America/Panama</item>
+ <item>Pacific/Majuro</item>
+ <item>Pacific/Midway</item>
+ <item>America/Tijuana</item>
+ <item>America/Phoenix</item>
+ <item>America/Regina</item>
+ <item>America/Manaus</item>
+ <item>America/Araguaina</item>
+ <item>America/Godthab</item>
+ <item>Atlantic/South_Georgia</item>
+ <item>Atlantic/Azores</item>
+ <item>Africa/Windhoek</item>
+ <item>Africa/Brazzaville</item>
+ <item>Africa/Nairobi</item>
+ <item>Asia/Tbilisi</item>
+ <item>Asia/Yerevan</item>
+ <item>Asia/Oral</item>
+ <item>Asia/Yekaterinburg</item>
+ <item>Asia/Krasnoyarsk</item>
+ <item>Asia/Irkutsk</item>
+ <item>Asia/Yakutsk</item>
+ <item>Australia/Hobart</item>
+ <item>Asia/Magadan</item>
+ <item>Pacific/Tongatapu</item>
+ <item>America/Aklavik</item>
+ <item>America/Montgomery</item>
+ <item>America/Washington_DC</item>
+ <item>America/La_Paz</item>
+ <item>America/St_Johns</item>
+ <item>Europe/Geneva</item>
+ <item>Europe/Odesa</item>
+ <item>Africa/Khartoum</item>
+ <item>Asia/Aden</item>
+ <item>Asia/Abu_Dhabi</item>
+ <item>Asia/Tashkent</item>
+ <item>Asia/New_Delhi</item>
+ <item>Asia/Calcutta</item>
+ <item>Pacific/Suva</item>
+ <item>Pacific/Wellington</item>
+ <item>Pacific/Chatham</item>
+ <item>Asia/Vladivostok</item>
</string-array>
<string-array name="cities_id" translatable="false">
@@ -919,6 +999,46 @@
<item>C297</item>
<item>C298</item>
<item>C299</item>
+ <item>C300</item>
+ <item>C301</item>
+ <item>C302</item>
+ <item>C303</item>
+ <item>C304</item>
+ <item>C305</item>
+ <item>C306</item>
+ <item>C307</item>
+ <item>C308</item>
+ <item>C309</item>
+ <item>C310</item>
+ <item>C311</item>
+ <item>C312</item>
+ <item>C313</item>
+ <item>C314</item>
+ <item>C315</item>
+ <item>C316</item>
+ <item>C317</item>
+ <item>C318</item>
+ <item>C319</item>
+ <item>C320</item>
+ <item>C321</item>
+ <item>C322</item>
+ <item>C323</item>
+ <item>C324</item>
+ <item>C325</item>
+ <item>C326</item>
+ <item>C327</item>
+ <item>C328</item>
+ <item>C329</item>
+ <item>C330</item>
+ <item>C331</item>
+ <item>C332</item>
+ <item>C333</item>
+ <item>C334</item>
+ <item>C335</item>
+ <item>C336</item>
+ <item>C337</item>
+ <item>C338</item>
+ <item>C339</item>
</string-array>
<array name="snooze_dismiss_drawables">
diff --git a/src/com/android/deskclock/SettingsActivity.java b/src/com/android/deskclock/SettingsActivity.java
index ff4657df2..77f72465a 100644
--- a/src/com/android/deskclock/SettingsActivity.java
+++ b/src/com/android/deskclock/SettingsActivity.java
@@ -18,6 +18,7 @@ package com.android.deskclock;
import android.app.ActionBar;
import android.content.Intent;
+import android.content.res.Configuration;
import android.content.res.Resources;
import android.media.AudioManager;
import android.os.Bundle;
@@ -37,6 +38,7 @@ import com.android.deskclock.worldclock.Cities;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Locale;
import java.util.TimeZone;
/**
@@ -74,6 +76,7 @@ public class SettingsActivity extends PreferenceActivity
public static final String DEFAULT_VOLUME_BEHAVIOR = "0";
private static CharSequence[][] mTimezones;
+ private static Locale mLocale;
private long mTime;
@@ -91,7 +94,7 @@ public class SettingsActivity extends PreferenceActivity
// onResume() is called so we do it once in onCreate
ListPreference listPref;
listPref = (ListPreference) findPreference(KEY_HOME_TZ);
- if (mTimezones == null) {
+ if (mTimezones == null || isLocaleChanged()) {
mTime = System.currentTimeMillis();
mTimezones = getAllTimezones();
}
@@ -236,7 +239,13 @@ public class SettingsActivity extends PreferenceActivity
pref.setOnPreferenceChangeListener(this);
listPref = (ListPreference)findPreference(KEY_HOME_TZ);
+ if (mTimezones == null || isLocaleChanged()) {
+ mTime = System.currentTimeMillis();
+ mTimezones = getAllTimezones();
+ }
listPref.setEnabled(state);
+ listPref.setEntryValues(mTimezones[0]);
+ listPref.setEntries(mTimezones[1]);
listPref.setSummary(listPref.getEntry());
listPref = (ListPreference) findPreference(KEY_VOLUME_BUTTONS);
@@ -335,4 +344,17 @@ public class SettingsActivity extends PreferenceActivity
return timeZones;
}
+ private boolean isLocaleChanged() {
+ Resources resource = getResources();
+ if ( resource != null ) {
+ Configuration config = resource.getConfiguration();
+ if ( config != null ) {
+ if ( mLocale == config.locale ) {
+ return false;
+ }
+ mLocale = config.locale;
+ }
+ }
+ return true;
+ }
}