summaryrefslogtreecommitdiff
path: root/core/java/android/widget/TimePicker.java
diff options
context:
space:
mode:
authorFabrice Di Meglio <fdimeglio@google.com>2013-08-27 12:56:20 -0700
committerFabrice Di Meglio <fdimeglio@google.com>2013-08-27 12:56:20 -0700
commite94aceabdbb1170fc1fc5f79f1239256c41bb73d (patch)
treeecf35d7d30d628885aa91e97bc8541bfbb96859c /core/java/android/widget/TimePicker.java
parenta6fd96c4201136c3fb494981da1c51c320266891 (diff)
parent71de13128fcec811b3b2ed1a3f8eda53c770a02d (diff)
resolved conflicts for merge of 71de1312 to master
Change-Id: Ib2065147a3160b5176fd44a4d14bec06c7c973e1
Diffstat (limited to 'core/java/android/widget/TimePicker.java')
-rw-r--r--core/java/android/widget/TimePicker.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/core/java/android/widget/TimePicker.java b/core/java/android/widget/TimePicker.java
index cc61c362681b..cea2b8f2b0f7 100644
--- a/core/java/android/widget/TimePicker.java
+++ b/core/java/android/widget/TimePicker.java
@@ -509,6 +509,10 @@ public class TimePicker extends FrameLayout {
@Override
public void setCurrentHour(Integer currentHour) {
+ setCurrentHour(currentHour, true);
+ }
+
+ private void setCurrentHour(Integer currentHour, boolean notifyTimeChanged) {
// why was Integer used in the first place?
if (currentHour == null || currentHour == getCurrentHour()) {
return;
@@ -529,7 +533,9 @@ public class TimePicker extends FrameLayout {
updateAmPmControl();
}
mHourSpinner.setValue(currentHour);
- onTimeChanged();
+ if (notifyTimeChanged) {
+ onTimeChanged();
+ }
}
@Override
@@ -569,8 +575,10 @@ public class TimePicker extends FrameLayout {
mIs24HourView = is24HourView;
getHourFormatData();
updateHourControl();
- // set value after spinner range is updated
- setCurrentHour(currentHour);
+ // set value after spinner range is updated - be aware that because mIs24HourView has
+ // changed then getCurrentHour() is not equal to the currentHour we cached before so
+ // explicitly ask for *not* propagating any onTimeChanged()
+ setCurrentHour(currentHour, false /* no onTimeChanged() */);
updateMinuteControl();
updateAmPmControl();
}
@@ -677,7 +685,7 @@ public class TimePicker extends FrameLayout {
inputMethodManager.hideSoftInputFromWindow(mDelegator.getWindowToken(), 0);
}
}
- }
+ }
private void updateAmPmControl() {
if (is24HourView()) {