Index: content/public/android/java/src/org/chromium/content/browser/input/WeekPicker.java |
diff --git a/content/public/android/java/src/org/chromium/content/browser/input/WeekPicker.java b/content/public/android/java/src/org/chromium/content/browser/input/WeekPicker.java |
index b8924f4e420d36ce0acd68a5c606a1de4e665eb7..e224a1035f60e17cfeb1ca4ed6f05219c0ae8dca 100644 |
--- a/content/public/android/java/src/org/chromium/content/browser/input/WeekPicker.java |
+++ b/content/public/android/java/src/org/chromium/content/browser/input/WeekPicker.java |
@@ -9,18 +9,19 @@ import android.content.Context; |
import org.chromium.content.R; |
import java.util.Calendar; |
+import java.util.TimeZone; |
// This class is heavily based on android.widget.DatePicker. |
public class WeekPicker extends TwoFieldDatePicker { |
- public WeekPicker(Context context, long minValue, long maxValue) { |
+ public WeekPicker(Context context, double minValue, double maxValue) { |
super(context, minValue, maxValue); |
getPositionInYearSpinner().setContentDescription( |
getResources().getString(R.string.accessibility_date_picker_week)); |
// initialize to current date |
- Calendar cal = Calendar.getInstance(); |
+ Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC")); |
cal.setFirstDayOfWeek(Calendar.MONDAY); |
cal.setMinimalDaysInFirstWeek(4); |
cal.setTimeInMillis(System.currentTimeMillis()); |
@@ -28,7 +29,7 @@ public class WeekPicker extends TwoFieldDatePicker { |
} |
private Calendar createDateFromWeek(int year, int week) { |
- Calendar date = Calendar.getInstance(); |
+ Calendar date = Calendar.getInstance(TimeZone.getTimeZone("UTC")); |
date.clear(); |
date.setFirstDayOfWeek(Calendar.MONDAY); |
date.setMinimalDaysInFirstWeek(4); |
@@ -39,15 +40,20 @@ public class WeekPicker extends TwoFieldDatePicker { |
} |
@Override |
- protected Calendar createDateFromValue(long value) { |
- Calendar date = Calendar.getInstance(); |
+ protected Calendar createDateFromValue(double value) { |
+ Calendar date = Calendar.getInstance(TimeZone.getTimeZone("UTC")); |
date.clear(); |
date.setFirstDayOfWeek(Calendar.MONDAY); |
date.setMinimalDaysInFirstWeek(4); |
- date.setTimeInMillis(value); |
+ date.setTimeInMillis((long) value); |
return date; |
} |
+ @Override |
+ protected double valueFromDate(int year, int week) { |
+ return createDateFromWeek(year, week).getTimeInMillis(); |
+ } |
+ |
public static int getISOWeekYearForDate(Calendar date) { |
int year = date.get(Calendar.YEAR); |
int month = date.get(Calendar.MONTH); |