diff options
-rw-r--r-- | res/menu/desk_clock_menu.xml | 3 | ||||
-rw-r--r-- | res/values-cs/strings.xml | 1 | ||||
-rw-r--r-- | res/values-da/strings.xml | 1 | ||||
-rw-r--r-- | res/values-de/strings.xml | 1 | ||||
-rw-r--r-- | res/values-el/strings.xml | 1 | ||||
-rw-r--r-- | res/values-es-rUS/strings.xml | 1 | ||||
-rw-r--r-- | res/values-es/strings.xml | 1 | ||||
-rw-r--r-- | res/values-fr/strings.xml | 1 | ||||
-rw-r--r-- | res/values-it/strings.xml | 1 | ||||
-rw-r--r-- | res/values-ja/strings.xml | 1 | ||||
-rw-r--r-- | res/values-ko/strings.xml | 1 | ||||
-rw-r--r-- | res/values-nb/strings.xml | 1 | ||||
-rw-r--r-- | res/values-nl/strings.xml | 1 | ||||
-rw-r--r-- | res/values-pl/strings.xml | 1 | ||||
-rw-r--r-- | res/values-pt-rPT/strings.xml | 1 | ||||
-rw-r--r-- | res/values-pt/strings.xml | 1 | ||||
-rw-r--r-- | res/values-ru/strings.xml | 1 | ||||
-rw-r--r-- | res/values-sv/strings.xml | 1 | ||||
-rw-r--r-- | res/values-tr/strings.xml | 1 | ||||
-rw-r--r-- | res/values-zh-rCN/strings.xml | 1 | ||||
-rw-r--r-- | res/values-zh-rTW/strings.xml | 1 | ||||
-rw-r--r-- | res/values/strings.xml | 2 | ||||
-rw-r--r-- | src/com/android/deskclock/DeskClock.java | 60 |
23 files changed, 66 insertions, 19 deletions
diff --git a/res/menu/desk_clock_menu.xml b/res/menu/desk_clock_menu.xml index c800642f3..d31d65b28 100644 --- a/res/menu/desk_clock_menu.xml +++ b/res/menu/desk_clock_menu.xml @@ -21,6 +21,9 @@ <item android:id="@+id/menu_item_add_alarm" android:title="@string/add_alarm" android:icon="@drawable/ic_menu_add"/> + <item android:id="@+id/menu_item_dock_settings" + android:title="@string/menu_item_dock_settings" + android:icon="@android:drawable/ic_menu_preferences"/> </menu> diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index db026c5f2..62122d4f6 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Zobrazení hodin"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Informace o počasí aktuálně nejsou k dispozici."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Nastavení doku"</string> </resources> diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index 5d807edc3..1b940ac25 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Urvisning"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Oplysninger om vejret er ikke tilgængelige i øjeblikket."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Indstillinger for dockingstation"</string> </resources> diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 6bfac6663..e8d28dbee 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Uhrendisplay"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Wetterinformationen derzeit nicht verfügbar"</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Dock-Einstellungen"</string> </resources> diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index a0e3b26b4..f4d238596 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Οθόνη ρολογιού"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Οι πληροφορίες καιρού δεν είναι διαθέσιμες αυτή τη στιγμή."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Ρυθμίσεις βάσης σύνδεσης"</string> </resources> diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml index 590a96174..89fa634cf 100644 --- a/res/values-es-rUS/strings.xml +++ b/res/values-es-rUS/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Visualización del reloj"</string> <string name="battery_charging_level" msgid="4391767951302394083">"Segmento <xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Actualmente no se encuentra disponible información sobre el tiempo."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Configuración de la base"</string> </resources> diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index 149d2bad9..95592fc65 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Reloj"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"La información meteorológica no está disponible."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Configuración del conector"</string> </resources> diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index ef61f11c0..802707393 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Affichage de l\'horloge"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"La météo n\'est pas disponible pour le moment."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Paramètres de la base"</string> </resources> diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 0db4b1fc9..708e8fd92 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Visualizzazione orologio"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Informazioni meteo attualmente non disponibili."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Impostazioni dock"</string> </resources> diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index e65eafd6b..e055121cb 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"時計のディスプレイ"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"天気予報は現在ご利用いただけません。"</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"ドックの設定"</string> </resources> diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index fa8473a4a..2062993d1 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"시계 디스플레이"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"현재 날씨 정보를 사용할 수 없습니다."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"도킹 설정"</string> </resources> diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml index bc5d0958a..df9fbd7f4 100644 --- a/res/values-nb/strings.xml +++ b/res/values-nb/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Klokkeskjerm"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Værinformasjonen er for øyeblikket ikke tilgjengelig."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Innstillinger for forankringsstasjon"</string> </resources> diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index c21ca0c4d..527d9bcf0 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Klokweergave"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Er is momenteel geen weerbericht beschikbaar."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Instellingen voor dockstation"</string> </resources> diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 339a8c886..0f3c8788b 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Wyświetlanie zegara"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Informacje pogodowe są aktualnie niedostępne."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Ustawienia podstawki"</string> </resources> diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml index 334eed8fa..07df86f13 100644 --- a/res/values-pt-rPT/strings.xml +++ b/res/values-pt-rPT/strings.xml @@ -114,4 +114,5 @@ <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <!-- no translation found for weather_fetch_failure (7517010911981312358) --> <skip /> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Definições da estação de ancoragem"</string> </resources> diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 10d56ca8b..84b3b0cb8 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -114,4 +114,5 @@ <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <!-- no translation found for weather_fetch_failure (7517010911981312358) --> <skip /> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Configurações de dock"</string> </resources> diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index 290ecffad..6b767a0b5 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Вид часов"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Сейчас информация о погоде недоступна."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Настройки док-станции"</string> </resources> diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index e637ee37a..0f5e9f5d6 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Klockvisning"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Väderinfo är inte tillgänglig för tillfället."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Dockningsinställningar"</string> </resources> diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 4be3ae1bc..707581ccf 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"Saat Görüntüleme"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g> <xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"Hava durumu bilgileri şu anda mevcut değil."</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"Yuva ayarları"</string> </resources> diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index e2346c4e9..e5804870c 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"时钟显示"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"目前无法提供天气信息。"</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"底座设置"</string> </resources> diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index ede187ac5..efdb8700c 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -107,4 +107,5 @@ <string name="desk_clock_button_description" msgid="968868045496561043">"時鐘顯示"</string> <string name="battery_charging_level" msgid="4391767951302394083">"<xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string> <string name="weather_fetch_failure" msgid="7517010911981312358">"目前無法取得天氣資訊。"</string> + <string name="menu_item_dock_settings" msgid="3524235151132971114">"座架設定"</string> </resources> diff --git a/res/values/strings.xml b/res/values/strings.xml index 04c8d848b..35546de84 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -249,6 +249,8 @@ <string name="alarm_requires_unlock_title">Alarm requires unlock</string> <string name="alarm_requires_unlock_summary">Must unlock phone to disable or snooze alarm</string> + + <string name="menu_item_dock_settings" msgid="9161438664257429372">Dock settings</string> </resources> diff --git a/src/com/android/deskclock/DeskClock.java b/src/com/android/deskclock/DeskClock.java index 0286a8f35..202d24c81 100644 --- a/src/com/android/deskclock/DeskClock.java +++ b/src/com/android/deskclock/DeskClock.java @@ -101,6 +101,9 @@ public class DeskClock extends Activity { // Alarm action for midnight (so we can update the date display). private static final String ACTION_MIDNIGHT = "com.android.deskclock.MIDNIGHT"; + // Intent to broadcast for dock settings. + private static final String DOCK_SETTINGS_ACTION = "com.android.settings.DOCK_SETTINGS"; + // Interval between polls of the weather widget. Its refresh period is // likely to be much longer (~3h), but we want to pick up any changes // within 5 minutes. @@ -174,8 +177,6 @@ public class DeskClock extends Activity { private boolean mLaunchedFromDock = false; - private int mIdleTimeoutEpoch = 0; - private Random mRNG; private PendingIntent mMidnightIntent; @@ -184,7 +185,8 @@ public class DeskClock extends Activity { @Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); - if (Intent.ACTION_DATE_CHANGED.equals(action)) { + if (DEBUG) Log.d(LOG_TAG, "mIntentReceiver.onReceive: action=" + action + ", intent=" + intent); + if (Intent.ACTION_DATE_CHANGED.equals(action) || ACTION_MIDNIGHT.equals(action)) { refreshDate(); } else if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { handleBatteryUpdate( @@ -213,9 +215,7 @@ public class DeskClock extends Activity { } else if (m.what == UPDATE_WEATHER_DISPLAY_MSG) { updateWeatherDisplay(); } else if (m.what == SCREEN_SAVER_TIMEOUT_MSG) { - if (m.arg1 == mIdleTimeoutEpoch) { - saveScreen(); - }
+ saveScreen(); } else if (m.what == SCREEN_SAVER_MOVE_MSG) { moveScreenSaver(); } @@ -270,6 +270,14 @@ public class DeskClock extends Activity { win.setAttributes(winParams); } + private void scheduleScreenSaver() { + // reschedule screen saver + mHandy.removeMessages(SCREEN_SAVER_TIMEOUT_MSG); + mHandy.sendMessageDelayed( + Message.obtain(mHandy, SCREEN_SAVER_TIMEOUT_MSG), + SCREEN_SAVER_TIMEOUT); + } + private void restoreScreen() { if (!mScreenSaverMode) return; if (DEBUG) Log.d(LOG_TAG, "restoreScreen"); @@ -278,6 +286,9 @@ public class DeskClock extends Activity { doDim(false); // restores previous dim mode // policy: update weather info when returning from screen saver if (mPluggedIn) requestWeatherDataFetch(); + + scheduleScreenSaver(); + refreshAll(); } @@ -584,10 +595,17 @@ public class DeskClock extends Activity { registerReceiver(mIntentReceiver, filter); Calendar today = Calendar.getInstance(); + today.set(Calendar.HOUR_OF_DAY, 0); + today.set(Calendar.MINUTE, 0); + today.set(Calendar.SECOND, 0); today.add(Calendar.DATE, 1); + long alarmTimeUTC = today.getTimeInMillis() + today.get(Calendar.ZONE_OFFSET); mMidnightIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_MIDNIGHT), 0); AlarmManager am = (AlarmManager) getSystemService(Context.ALARM_SERVICE); - am.setRepeating(AlarmManager.RTC, today.getTimeInMillis(), AlarmManager.INTERVAL_DAY, mMidnightIntent); + am.setRepeating(AlarmManager.RTC, alarmTimeUTC, AlarmManager.INTERVAL_DAY, mMidnightIntent); + if (DEBUG) Log.d(LOG_TAG, "set repeating midnight event at " + + alarmTimeUTC + " repeating every " + + AlarmManager.INTERVAL_DAY + " with intent: " + mMidnightIntent); // un-dim when resuming mDimmed = false; @@ -598,10 +616,7 @@ public class DeskClock extends Activity { setWakeLock(mPluggedIn); - mIdleTimeoutEpoch++; - mHandy.sendMessageDelayed( - Message.obtain(mHandy, SCREEN_SAVER_TIMEOUT_MSG, mIdleTimeoutEpoch, 0), - SCREEN_SAVER_TIMEOUT); + scheduleScreenSaver(); final boolean launchedFromDock = getIntent().hasCategory(Intent.CATEGORY_DESK_DOCK); @@ -619,7 +634,9 @@ public class DeskClock extends Activity { public void onPause() { if (DEBUG) Log.d(LOG_TAG, "onPause"); - // Turn off the screen saver. (But don't un-dim.) + // Turn off the screen saver and cancel any pending timeouts. + // (But don't un-dim.) + mHandy.removeMessages(SCREEN_SAVER_TIMEOUT_MSG); restoreScreen(); // Other things we don't want to be doing in the background. @@ -767,14 +784,19 @@ public class DeskClock extends Activity { @Override public boolean onOptionsItemSelected(MenuItem item) { - if (item.getItemId() == R.id.menu_item_alarms) { - startActivity(new Intent(DeskClock.this, AlarmClock.class)); - return true; - } else if (item.getItemId() == R.id.menu_item_add_alarm) { - AlarmClock.addNewAlarm(this); - return true; + switch (item.getItemId()) { + case R.id.menu_item_alarms: + startActivity(new Intent(DeskClock.this, AlarmClock.class)); + return true; + case R.id.menu_item_add_alarm: + AlarmClock.addNewAlarm(this); + return true; + case R.id.menu_item_dock_settings: + startActivity(new Intent(DOCK_SETTINGS_ACTION)); + return true; + default: + return false; } - return false; } @Override |