| Index: content/public/android/java/src/org/chromium/content/browser/picker/InputDialogContainer.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/picker/InputDialogContainer.java b/content/public/android/java/src/org/chromium/content/browser/picker/InputDialogContainer.java
|
| index dcaa1cf8ca8ac6b30458a0b2599614f5530e1a3f..480f8af55544678c9b47e7a6b489895ea9ccf387 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/picker/InputDialogContainer.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/picker/InputDialogContainer.java
|
| @@ -6,6 +6,8 @@ package org.chromium.content.browser.picker;
|
|
|
| import android.app.AlertDialog;
|
| import android.app.DatePickerDialog.OnDateSetListener;
|
| +import android.app.TimePickerDialog;
|
| +import android.app.TimePickerDialog.OnTimeSetListener;
|
| import android.content.Context;
|
| import android.content.DialogInterface;
|
| import android.content.DialogInterface.OnDismissListener;
|
| @@ -210,12 +212,16 @@ public class InputDialogContainer {
|
| dialog.setTitle(mContext.getText(R.string.date_picker_dialog_title));
|
| mDialog = dialog;
|
| } else if (dialogType == TextInputType.TIME) {
|
| - mDialog = new MultiFieldTimePickerDialog(
|
| - mContext, 0 /* theme */ ,
|
| - hourOfDay, minute, second, millis,
|
| - (int) min, (int) max, stepTime,
|
| - DateFormat.is24HourFormat(mContext),
|
| - new FullTimeListener(dialogType));
|
| + // If user doesn't need to set seconds and milliseconds, show the default clock style
|
| + // time picker dialog. Otherwise, show a full spinner style time picker.
|
| + if (stepTime < 0 || stepTime >= 60000 /* milliseconds in a minute */) {
|
| + mDialog = new TimePickerDialog(mContext, new TimeListener(dialogType), hourOfDay,
|
| + minute, DateFormat.is24HourFormat(mContext));
|
| + } else {
|
| + mDialog = new MultiFieldTimePickerDialog(mContext, 0 /* theme */, hourOfDay, minute,
|
| + second, millis, (int) min, (int) max, stepTime,
|
| + DateFormat.is24HourFormat(mContext), new FullTimeListener(dialogType));
|
| + }
|
| } else if (dialogType == TextInputType.DATE_TIME
|
| || dialogType == TextInputType.DATE_TIME_LOCAL) {
|
| mDialog = new DateTimePickerDialog(mContext,
|
| @@ -285,6 +291,18 @@ public class InputDialogContainer {
|
| }
|
| }
|
|
|
| + private class TimeListener implements OnTimeSetListener {
|
| + private final int mDialogType;
|
| + TimeListener(int dialogType) {
|
| + mDialogType = dialogType;
|
| + }
|
| +
|
| + @Override
|
| + public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
|
| + setFieldDateTimeValue(mDialogType, 0, 0, 0, hourOfDay, minute, 0, 0, 0);
|
| + }
|
| + }
|
| +
|
| private class FullTimeListener implements OnMultiFieldTimeSetListener {
|
| private final int mDialogType;
|
| FullTimeListener(int dialogType) {
|
|
|