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

Side by Side Diff: content/browser/android/date_time_chooser_android.h

Issue 23623019: Support datalist for date/time input types on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed nits Created 7 years, 1 month 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 #ifndef CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_ 5 #ifndef CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_
6 #define CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_ 6 #define CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector>
9 10
10 #include "base/android/jni_helper.h" 11 #include "base/android/jni_helper.h"
11 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
12 13
13 namespace content { 14 namespace content {
14 15
15 class ContentViewCore; 16 class ContentViewCore;
16 class RenderViewHost; 17 class RenderViewHost;
18 struct DateTimeSuggestion;
17 19
18 // Android implementation for DateTimeChooser dialogs. 20 // Android implementation for DateTimeChooser dialogs.
19 class DateTimeChooserAndroid { 21 class DateTimeChooserAndroid {
20 public: 22 public:
21 DateTimeChooserAndroid(); 23 DateTimeChooserAndroid();
22 ~DateTimeChooserAndroid(); 24 ~DateTimeChooserAndroid();
23 25
24 // DateTimeChooser implementation: 26 // DateTimeChooser implementation:
25 void ShowDialog(ContentViewCore* content, 27 void ShowDialog(ContentViewCore* content,
26 RenderViewHost* sender, 28 RenderViewHost* sender,
27 int type, 29 int dialog_type,
28 int year, 30 double current_value,
29 int month,
30 int day,
31 int hour,
32 int minute,
33 int second,
34 int milli,
35 int week,
36 double min, 31 double min,
37 double max, 32 double max,
38 double step); 33 double step,
34 std::vector<DateTimeSuggestion> suggestions);
39 35
40 // Replaces the current value with the one passed the different fields 36 // Replaces the current value with the one passed the different fields
41 void ReplaceDateTime(JNIEnv* env, 37 void ReplaceDateTime(JNIEnv* env,
42 jobject, 38 jobject,
43 jint dialog_type, 39 jdouble);
44 jint year,
45 jint month,
46 jint day,
47 jint hour,
48 jint minute,
49 jint second,
50 jint milli,
51 jint week);
52 40
53 // Closes the dialog without propagating any changes. 41 // Closes the dialog without propagating any changes.
54 void CancelDialog(JNIEnv* env, jobject); 42 void CancelDialog(JNIEnv* env, jobject);
55 43
56 // Propagates the different types of accepted date/time values to the 44 // Propagates the different types of accepted date/time values to the
57 // java side. 45 // java side.
58 static void InitializeDateInputTypes( 46 static void InitializeDateInputTypes(
59 int text_input_type_date, int text_input_type_date_time, 47 int text_input_type_date, int text_input_type_date_time,
60 int text_input_type_date_time_local, int text_input_type_month, 48 int text_input_type_date_time_local, int text_input_type_month,
61 int text_input_type_time, int text_input_type_week); 49 int text_input_type_time, int text_input_type_week);
62 50
63 private: 51 private:
64 class DateTimeIPCSender; 52 class DateTimeIPCSender;
65 53
66 // The DateTimeIPCSender class is a render view observer, so it will take care 54 // The DateTimeIPCSender class is a render view observer, so it will take care
67 // of its own deletion. 55 // of its own deletion.
68 DateTimeIPCSender* sender_; 56 DateTimeIPCSender* sender_;
69 57
70 base::android::ScopedJavaGlobalRef<jobject> j_date_time_chooser_; 58 base::android::ScopedJavaGlobalRef<jobject> j_date_time_chooser_;
71 59
72 DISALLOW_COPY_AND_ASSIGN(DateTimeChooserAndroid); 60 DISALLOW_COPY_AND_ASSIGN(DateTimeChooserAndroid);
73 }; 61 };
74 62
75 // Native JNI methods 63 // Native JNI methods
76 bool RegisterDateTimeChooserAndroid(JNIEnv* env); 64 bool RegisterDateTimeChooserAndroid(JNIEnv* env);
77 65
78 } // namespace content 66 } // namespace content
79 67
80 #endif // CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_ 68 #endif // CONTENT_BROWSER_ANDROID_DATE_TIME_CHOOSER_ANDROID_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698