Index: content/browser/web_contents/web_contents_impl.cc |
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc |
index 02600f35c018bf938b1a7eacbf4bf6e28ca18602..ec1d84a76badc38dd476c5c4785cb709ae0629c9 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -85,6 +85,10 @@ |
#include "webkit/glue/web_intent_service_data.h" |
#include "webkit/glue/webpreferences.h" |
+#if defined(OS_ANDROID) |
+#include "content/browser/android/date_time_chooser_android.h" |
+#endif |
+ |
#if defined(OS_MACOSX) |
#include "base/mac/foundation_util.h" |
#include "ui/surface/io_surface_support_mac.h" |
@@ -725,10 +729,6 @@ bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, |
IPC_MESSAGE_HANDLER(ViewHostMsg_RegisterProtocolHandler, |
OnRegisterProtocolHandler) |
IPC_MESSAGE_HANDLER(ViewHostMsg_Find_Reply, OnFindReply) |
-#if defined(OS_ANDROID) |
- IPC_MESSAGE_HANDLER(ViewHostMsg_FindMatchRects_Reply, |
- OnFindMatchRectsReply) |
-#endif |
IPC_MESSAGE_HANDLER(ViewHostMsg_CrashedPlugin, OnCrashedPlugin) |
IPC_MESSAGE_HANDLER(ViewHostMsg_AppCacheAccessed, OnAppCacheAccessed) |
IPC_MESSAGE_HANDLER(ViewHostMsg_OpenColorChooser, OnOpenColorChooser) |
@@ -743,6 +743,12 @@ bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, |
OnBrowserPluginCreateGuest) |
IPC_MESSAGE_HANDLER(IconHostMsg_DidDownloadFavicon, OnDidDownloadFavicon) |
IPC_MESSAGE_HANDLER(IconHostMsg_UpdateFaviconURL, OnUpdateFaviconURL) |
+#if defined(OS_ANDROID) |
+ IPC_MESSAGE_HANDLER(ViewHostMsg_FindMatchRects_Reply, |
+ OnFindMatchRectsReply) |
+ IPC_MESSAGE_HANDLER(ViewHostMsg_OpenDateTimeDialog, |
+ OnOpenDateTimeDialog) |
+#endif |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP_EX() |
message_source_ = NULL; |
@@ -1184,6 +1190,10 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { |
java_bridge_dispatcher_host_manager_.reset( |
new JavaBridgeDispatcherHostManager(this)); |
#endif |
+ |
+#if defined(OS_ANDROID) |
+ date_time_chooser_.reset(new DateTimeChooserAndroid()); |
+#endif |
} |
void WebContentsImpl::OnWebContentsDestroyed(WebContents* web_contents) { |
@@ -2271,6 +2281,12 @@ void WebContentsImpl::OnFindMatchRectsReply( |
if (delegate_) |
delegate_->FindMatchRectsReply(this, version, rects, active_rect); |
} |
+ |
+void WebContentsImpl::OnOpenDateTimeDialog(int type, const std::string& value) { |
+ date_time_chooser_->ShowDialog( |
+ GetContentNativeView(), GetRenderViewHost(), type, value); |
+} |
+ |
#endif |
void WebContentsImpl::OnCrashedPlugin(const FilePath& plugin_path, |