Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(732)

Unified Diff: content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java

Issue 23623019: Support datalist for date/time input types on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Used double to transfer value Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java b/content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java
index 57cab667619ff3b984818052c172ec1950a18988..79da411d68f6370b6b592cf6b6eb9f089e64afd2 100644
--- a/content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java
+++ b/content/public/android/java/src/org/chromium/content/browser/input/MonthPicker.java
@@ -10,6 +10,7 @@ import java.text.DateFormatSymbols;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Locale;
+import java.util.TimeZone;
import org.chromium.content.R;
@@ -29,7 +30,7 @@ public class MonthPicker extends TwoFieldDatePicker {
DateFormatSymbols.getInstance(Locale.getDefault()).getShortMonths();
// initialize to current date
- Calendar cal = Calendar.getInstance();
+ Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
init(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), null);
}
@@ -37,15 +38,20 @@ public class MonthPicker extends TwoFieldDatePicker {
protected Calendar createDateFromValue(long value) {
int year = (int)Math.min(value / 12 + 1970, Integer.MAX_VALUE);
int month = (int) (value % 12);
- Calendar cal = Calendar.getInstance();
+ Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
cal.clear();
cal.set(year, month, 1);
return cal;
}
@Override
+ protected long valueFromDate(int year, int month) {
+ return (year - 1970) * 12 + month;
+ }
+
+ @Override
protected void setCurrentDate(int year, int month) {
- Calendar date = Calendar.getInstance();
+ Calendar date = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
date.set(year, month, 1);
if (date.before(getMinDate())) {
setCurrentDate(getMinDate());

Powered by Google App Engine
This is Rietveld 408576698