summaryrefslogtreecommitdiff
path: root/core/java/android/widget/DatePicker.java
diff options
context:
space:
mode:
authorSvetoslav Ganov <svetoslavganov@google.com>2011-01-26 22:50:51 -0800
committerSvetoslav Ganov <svetoslavganov@google.com>2011-01-26 22:50:55 -0800
commit58f51255eb20f9c4d16c11554f372ff92d45fcc7 (patch)
treed6efaae70285478feed7092bb491c70292cb4957 /core/java/android/widget/DatePicker.java
parent7765c65dbe1ba8f2229f2fec5a83ba2d1da79733 (diff)
The calendar view widget was jumping incorrectly to the next week
while selectiong the last day of the week. The NumberPicker widget was getting into an inconsitent state when reaching the end of the range (non wrapping selector wheel) and the user touches the location of the hidden increment/decrement button. Change-Id: Id54103295dd2574030e2c29996061faa659a5bb7
Diffstat (limited to 'core/java/android/widget/DatePicker.java')
-rw-r--r--core/java/android/widget/DatePicker.java11
1 files changed, 9 insertions, 2 deletions
diff --git a/core/java/android/widget/DatePicker.java b/core/java/android/widget/DatePicker.java
index ea868a634c0f..72935723fb29 100644
--- a/core/java/android/widget/DatePicker.java
+++ b/core/java/android/widget/DatePicker.java
@@ -184,6 +184,8 @@ public class DatePicker extends FrameLayout {
// now set the date to the adjusted one
setDate(mTempDate.get(Calendar.YEAR), mTempDate.get(Calendar.MONTH),
mTempDate.get(Calendar.DAY_OF_MONTH));
+ updateSpinners();
+ updateCalendarView();
notifyDateChanged();
}
};
@@ -195,6 +197,7 @@ public class DatePicker extends FrameLayout {
mCalendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
public void onSelectedDayChange(CalendarView view, int year, int month, int monthDay) {
setDate(year, month, monthDay);
+ updateSpinners();
notifyDateChanged();
}
});
@@ -469,6 +472,8 @@ public class DatePicker extends FrameLayout {
return;
}
setDate(year, month, dayOfMonth);
+ updateSpinners();
+ updateCalendarView();
notifyDateChanged();
}
@@ -489,6 +494,8 @@ public class DatePicker extends FrameLayout {
SavedState ss = (SavedState) state;
super.onRestoreInstanceState(ss.getSuperState());
setDate(ss.mYear, ss.mMonth, ss.mDay);
+ updateSpinners();
+ updateCalendarView();
}
/**
@@ -504,6 +511,8 @@ public class DatePicker extends FrameLayout {
public void init(int year, int monthOfYear, int dayOfMonth,
OnDateChangedListener onDateChangedListener) {
setDate(year, monthOfYear, dayOfMonth);
+ updateSpinners();
+ updateCalendarView();
mOnDateChangedListener = onDateChangedListener;
}
@@ -553,8 +562,6 @@ public class DatePicker extends FrameLayout {
} else if (mCurrentDate.after(mMaxDate)) {
mCurrentDate.setTimeInMillis(mMaxDate.getTimeInMillis());
}
- updateSpinners();
- updateCalendarView();
}
private void updateSpinners() {