summaryrefslogtreecommitdiffstats
path: root/src/com/android/deskclock/AlarmInitReceiver.java
diff options
context:
space:
mode:
authorJames Lemieux <jplemieux@google.com>2015-09-18 16:45:45 -0700
committerJames Lemieux <jplemieux@google.com>2015-09-29 11:17:27 -0700
commit24a54fc16fdf95ee3f76ab99978c3401473dc516 (patch)
tree4d677ebad703dcdb4c92b2d5d1849dff07bbfbb1 /src/com/android/deskclock/AlarmInitReceiver.java
parent548c0d1813d06e69833b0835d0103b13c0dfb2cc (diff)
downloadandroid_packages_apps_DeskClock-24a54fc16fdf95ee3f76ab99978c3401473dc516.tar.gz
android_packages_apps_DeskClock-24a54fc16fdf95ee3f76ab99978c3401473dc516.tar.bz2
android_packages_apps_DeskClock-24a54fc16fdf95ee3f76ab99978c3401473dc516.zip
Refactor Stopwatch to use new unified DataModel
This refactoring introduces Stopwatch and Lap domain objects. Instances of these domain objects are fetched via a DataModel class that is the single point of reference for all stopwatch data. This allows the data to be shared across the entire application. In particular, the stopwatch notification and StopwatchFragment all draw upon the same model to determine what the state of the stopwatch is and what laps have been recorded. Change-Id: I6bda1fda73568cb312b167f1f6b10bd1abc99d62
Diffstat (limited to 'src/com/android/deskclock/AlarmInitReceiver.java')
-rw-r--r--src/com/android/deskclock/AlarmInitReceiver.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/deskclock/AlarmInitReceiver.java b/src/com/android/deskclock/AlarmInitReceiver.java
index 5df4da8c8..04e83bc65 100644
--- a/src/com/android/deskclock/AlarmInitReceiver.java
+++ b/src/com/android/deskclock/AlarmInitReceiver.java
@@ -24,6 +24,7 @@ import android.os.PowerManager.WakeLock;
import android.preference.PreferenceManager;
import com.android.deskclock.alarms.AlarmStateManager;
+import com.android.deskclock.data.DataModel;
import com.android.deskclock.settings.SettingsActivity;
import com.android.deskclock.timer.TimerObj;
@@ -56,6 +57,13 @@ public class AlarmInitReceiver extends BroadcastReceiver {
// We need to increment the global id out of the async task to prevent race conditions
AlarmStateManager.updateGlobalIntentId(context);
+ // Clear stopwatch data because stopwatch times are based on elapsed real-time values which
+ // are meaningless after a device reboot.
+ if (Intent.ACTION_BOOT_COMPLETED.equals(action)) {
+ DataModel.getDataModel().clearLaps();
+ DataModel.getDataModel().resetStopwatch();
+ }
+
AsyncHandler.post(new Runnable() {
@Override public void run() {
try {
@@ -65,7 +73,6 @@ public class AlarmInitReceiver extends BroadcastReceiver {
PreferenceManager.getDefaultSharedPreferences(context);
LogUtils.v("AlarmInitReceiver - Reset timers and clear stopwatch data");
TimerObj.resetTimersInSharedPrefs(prefs);
- Utils.clearSwSharedPref(prefs);
if (!prefs.getBoolean(PREF_VOLUME_DEF_DONE, false)) {
// Fix the default