History log of /packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ff62e7fa903e3b6b11d0443543725c1351ab289d 03-Dec-2016 James Lemieux <jplemieux@google.com> Refactor where SharedPreferences are built

Bug: 33251787

To enable easier testing, build and migrate SharedPreferences once
during Application creation and only store references to it in member
variables.

Change-Id: I562d2cbddeeff165304fc8844d2af4b765fe4861
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
23629266834a251cb937a885e5223e5ae37cc6fa 21-Nov-2016 Christine Franks <christyfranks@google.com> Fix janky RepeatDays animation

Bug: 33039716
Test: manual - no apparent jank (or strict mode violations) during
repeatdays expansion/contraction, and systrace reports no dropped
frames during the animation itself.

Change-Id: I923781f44a5db50534640ae605705f7437c805f4
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
c539e415e2ce913df7671e688490d4717aba922a 09-Sep-2016 Sean Stout <sstout@google.com> Stopwatch no longer has Pre-N and N+ notification builders.

Bug: 30793112
Test: manual - Confirm notifications post correctly on Pre-N and N

Unified the notification builders so only one exists.

Change-Id: Ibe2e845bf380a8cfdbce659aebdfa1f6ce530ccf
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
8670cfcca8323116fc1b1c1747798334fdbb4d24 01-Sep-2016 Justin Klaassen <justinklaassen@google.com> resolve merge conflicts of ab6a8e1 to ub-deskclock-huddle

Change-Id: I88f075b4c6fc95e54a92d11328e4258521c7054e
ee9400bfd85f6c7bd01978fa2a629c5d419e0510 08-Jun-2016 James Lemieux <jplemieux@google.com> Provide stable order for alarm notifications

Bug: 28904591

- alarms, timers and stopwatch each use unique notification group keys
- Upcoming/Snoozed alarms are sorted chronologically followed by
Missed alarms (also sorted chronologically)

Change-Id: I1b46af22c3ddc691ecfd4545b54db5ff06c5983e
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
7c797fbf198378b547daa8fbb86f11c9d9c77f99 27-May-2016 James Lemieux <jplemieux@google.com> Show chronometer in expired timer notification

Bug: 28985277

The chronometer time is always displayed as the top line.
The second line may now be any of:
- a single timer label
- "Time's up" if no label was given
- "N timers expired" if multiple timers are currently expired.

Change-Id: Ibe57b03b4b308d89f11ba0d9f175d16bee2480eb
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
f73bea9004114208f4d23ad4c04dd42895f4ec82 18-May-2016 James Lemieux <jplemieux@google.com> Style the stopwatch notification properly for N

Bug: 28524426
Change-Id: Icc9be1f9365ab37f1b60ab4dafe51b15abe93fe3
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
9042b0b548db623f7f465767008a27d305299aa9 18-Feb-2016 James Lemieux <jplemieux@google.com> Introduce StopwatchListener to gracefully handle BOOT_COMPLETE

After a device reboot, there is a window of opportunity (about 15 seconds)
in which the user may open the Clock app and view the stopwatch. They
will see the stopwatch in a non-operational state. When BOOT_COMPLETE
is finally broadcast, the stopwatch is reset and the laps are cleared.

Prior to this change, the stale lap data would continue to be displayed
because no mechanism existed to notify StopwatchFragment of changes
to the stopwatch data by an external entity.

This change introduces StopwatchListener, which is notified of changes to
the stopwatch and its laps. The StopwatchFragment uses this listener to
react to stopwatch changes from external entities, such as the
BOOT_COMPLETE receiver.

Clearing laps is now a byproduct of resetting the stopwatch instead of an
independent update to the model.

Change-Id: Ie1aa3d3e5006d8a28947cb3cd6343175d1c3644c
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
f8e562f69dd6547f7386956eea2edab361913cc0 13-Feb-2016 James Lemieux <jplemieux@google.com> Do not assume current stopwatch lap has positive duration

Bug: 27171498

After a device reboot the realtime clock is reset. Because of this, the
app is notified of the BOOT_COMPLETE and resets the stopwatch.
There exists about a 10 second window of opportunity before the
BOOT_COMPLETE broadcast in which the app may be opened and
the realtime clock information may be used to compute stopwatch
laptimes which would be negative. This case is now handled gracefully
rather than crashing on a sanity check.

Change-Id: I0eb4da0a9a55b5abc8d6abaa5a2e046821d39a2e
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
437da3b08ce9ce1b32f4e544816cb3431ceb8d4e 13-Nov-2015 James Lemieux <jplemieux@google.com> Simplify HandleDeskClockApiCalls, TimerService and StopwatchService

HandleDeskClockApiCalls used to pass through all timer and stopwatch
mutations to the corresponding Service to complete. This complicated
the logging of the corresponding event unnecessarily.

After this change:

- StopwatchService is only invoked from stopwatch notifications and may
now assume the event label

- TimerService is only invoked from timer notifications and AlarmManager
and may now assume the event label

- HandleDeskClockApiCalls.EXTRA_FROM_NOTIFICATION has been replaced
with HandleDeskClockApiCalls.EXTRA_EVENT_LABEL which explicitly
identifies the label of the event

Change-Id: Ic9796c43e826f82138ee431d3abb02524c0146ba
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java
24a54fc16fdf95ee3f76ab99978c3401473dc516 19-Sep-2015 James Lemieux <jplemieux@google.com> 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
/packages/apps/DeskClock/src/com/android/deskclock/data/StopwatchModel.java