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

Side by Side Diff: content/public/android/java/src/org/chromium/content/browser/DateTimeChooserAndroid.java

Issue 12191005: Move Android Date/Time parsing to the renderer (C++ and ICU) instead of the current parsing that ha… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed Review comments except renaming the file Created 7 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.content.browser; 5 package org.chromium.content.browser;
6 6
7 import org.chromium.base.CalledByNative; 7 import org.chromium.base.CalledByNative;
8 import org.chromium.base.JNINamespace; 8 import org.chromium.base.JNINamespace;
9 9
10 import android.content.Context; 10 import android.content.Context;
11 11
12 /** 12 /**
13 * Plumbing for the different date/time dialog adapters. 13 * Plumbing for the different date/time dialog adapters.
14 */ 14 */
15 @JNINamespace("content") 15 @JNINamespace("content")
16 class DateTimeChooserAndroid { 16 class DateTimeChooserAndroid {
17 17
18 private final int mNativeDateTimeChooserAndroid; 18 private final int mNativeDateTimeChooserAndroid;
19 private final InputDialogContainer mInputDialogContainer; 19 private final InputDialogContainer mInputDialogContainer;
20 20
21 private DateTimeChooserAndroid(Context context, 21 private DateTimeChooserAndroid(Context context,
22 int nativeDateTimeChooserAndroid) { 22 int nativeDateTimeChooserAndroid) {
23 mNativeDateTimeChooserAndroid = nativeDateTimeChooserAndroid; 23 mNativeDateTimeChooserAndroid = nativeDateTimeChooserAndroid;
24 mInputDialogContainer = new InputDialogContainer(context, 24 mInputDialogContainer = new InputDialogContainer(context,
25 new InputDialogContainer.InputActionDelegate() { 25 new InputDialogContainer.InputActionDelegate() {
26 26
27 @Override 27 @Override
28 public void replaceDateTime(String text) { 28 public void replaceDateTime(
29 nativeReplaceDateTime(mNativeDateTimeChooserAndroid, text); 29 int dialogType,
30 int year, int month, int day, int hour, int minute, int seco nd) {
31 nativeReplaceDateTime(mNativeDateTimeChooserAndroid,
32 dialogType,
33 year, month, day, hour, minute, second);
30 } 34 }
31 35
32 @Override 36 @Override
33 public void cancelDateTimeDialog() { 37 public void cancelDateTimeDialog() {
34 nativeCancelDialog(mNativeDateTimeChooserAndroid); 38 nativeCancelDialog(mNativeDateTimeChooserAndroid);
35 } 39 }
36 }); 40 });
37 } 41 }
38 42
39 private void showDialog(int dialogType, String text) { 43 private void showDialog(int dialogType, int year, int month, int monthDay,
40 mInputDialogContainer.showDialog(text, dialogType); 44 int hour, int minute, int second) {
45 mInputDialogContainer.showDialog(dialogType, year, month, monthDay,
46 hour, minute, second);
41 } 47 }
42 48
43 @CalledByNative 49 @CalledByNative
44 private static DateTimeChooserAndroid createDateTimeChooser( 50 private static DateTimeChooserAndroid createDateTimeChooser(
45 ContentViewCore contentViewCore, 51 ContentViewCore contentViewCore,
46 int nativeDateTimeChooserAndroid, String text, int dialogType) { 52 int nativeDateTimeChooserAndroid, int dialogType,
53 int year, int month, int day,
54 int hour, int minute, int second) {
47 DateTimeChooserAndroid chooser = 55 DateTimeChooserAndroid chooser =
48 new DateTimeChooserAndroid( 56 new DateTimeChooserAndroid(
49 contentViewCore.getContext(), nativeDateTimeChooserAndro id); 57 contentViewCore.getContext(), nativeDateTimeChooserAndro id);
50 chooser.showDialog(dialogType, text); 58 chooser.showDialog(dialogType, year, month, day, hour, minute, second);
51 return chooser; 59 return chooser;
52 } 60 }
53 61
54 @CalledByNative 62 @CalledByNative
55 private static void initializeDateInputTypes(int textInputTypeDate, int text InputTypeDateTime, 63 private static void initializeDateInputTypes(int textInputTypeDate, int text InputTypeDateTime,
56 int textInputTypeDateTimeLocal, int textInputTypeMonth, 64 int textInputTypeDateTimeLocal, int textInputTypeMonth,
57 int textInputTypeTime) { 65 int textInputTypeTime) {
58 InputDialogContainer.initializeInputTypes(textInputTypeDate, textInputTy peDateTime, 66 InputDialogContainer.initializeInputTypes(textInputTypeDate, textInputTy peDateTime,
59 textInputTypeDateTimeLocal, textInputTypeMonth, textInputTypeTim e); 67 textInputTypeDateTimeLocal, textInputTypeMonth, textInputTypeTim e);
60 } 68 }
61 69
62 private native void nativeReplaceDateTime(int nativeDateTimeChooserAndroid, String text); 70 private native void nativeReplaceDateTime(int nativeDateTimeChooserAndroid,
71 int dialogType,
72 int year, int month, int day, int hour, int minute, int second);
73
63 private native void nativeCancelDialog(int nativeDateTimeChooserAndroid); 74 private native void nativeCancelDialog(int nativeDateTimeChooserAndroid);
64 } 75 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698