| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 #include "android_webview/native/aw_contents.h" | 5 #include "android_webview/native/aw_contents.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 | 8 |
| 9 #include "android_webview/browser/aw_browser_context.h" | 9 #include "android_webview/browser/aw_browser_context.h" |
| 10 #include "android_webview/browser/aw_browser_main_parts.h" | 10 #include "android_webview/browser/aw_browser_main_parts.h" |
| (...skipping 1068 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1079 | 1079 |
| 1080 if (sent_ports != nullptr) { | 1080 if (sent_ports != nullptr) { |
| 1081 base::android::JavaIntArrayToIntVector(env, sent_ports, &j_ports); | 1081 base::android::JavaIntArrayToIntVector(env, sent_ports, &j_ports); |
| 1082 BrowserThread::PostTask( | 1082 BrowserThread::PostTask( |
| 1083 BrowserThread::IO, | 1083 BrowserThread::IO, |
| 1084 FROM_HERE, | 1084 FROM_HERE, |
| 1085 base::Bind(&AwMessagePortServiceImpl::RemoveSentPorts, | 1085 base::Bind(&AwMessagePortServiceImpl::RemoveSentPorts, |
| 1086 base::Unretained(AwMessagePortServiceImpl::GetInstance()), | 1086 base::Unretained(AwMessagePortServiceImpl::GetInstance()), |
| 1087 j_ports)); | 1087 j_ports)); |
| 1088 } | 1088 } |
| 1089 | |
| 1090 content::MessagePortProvider::PostMessageToFrame(web_contents_.get(), | 1089 content::MessagePortProvider::PostMessageToFrame(web_contents_.get(), |
| 1091 j_source_origin, | 1090 j_source_origin, |
| 1092 j_target_origin, | 1091 j_target_origin, |
| 1093 j_message, | 1092 j_message, |
| 1094 j_ports); | 1093 j_ports); |
| 1095 } | 1094 } |
| 1096 | 1095 |
| 1097 scoped_refptr<AwMessagePortMessageFilter> | 1096 scoped_refptr<AwMessagePortMessageFilter> |
| 1098 AwContents::GetMessagePortMessageFilter() { | 1097 AwContents::GetMessagePortMessageFilter() { |
| 1099 // Create a message port message filter if necessary | 1098 // Create a message port message filter if necessary |
| 1100 if (message_port_message_filter_.get() == nullptr) { | 1099 if (message_port_message_filter_.get() == nullptr) { |
| 1101 message_port_message_filter_ = | 1100 message_port_message_filter_ = |
| 1102 new AwMessagePortMessageFilter( | 1101 new AwMessagePortMessageFilter( |
| 1103 web_contents_->GetMainFrame()->GetRoutingID()); | 1102 web_contents_->GetMainFrame()->GetRoutingID()); |
| 1104 web_contents_->GetRenderProcessHost()->AddFilter( | 1103 web_contents_->GetRenderProcessHost()->AddFilter( |
| 1105 message_port_message_filter_.get()); | 1104 message_port_message_filter_.get()); |
| 1106 } | 1105 } |
| 1107 return message_port_message_filter_; | 1106 return message_port_message_filter_; |
| 1108 } | 1107 } |
| 1109 | 1108 |
| 1110 void AwContents::CreateMessageChannel(JNIEnv* env, jobject obj, | 1109 void AwContents::CreateMessageChannel(JNIEnv* env, jobject obj, |
| 1111 jobject callback) { | 1110 jobjectArray ports) { |
| 1112 | 1111 |
| 1113 AwMessagePortServiceImpl::GetInstance()->CreateMessageChannel(env, callback, | 1112 AwMessagePortServiceImpl::GetInstance()->CreateMessageChannel(env, ports, |
| 1114 GetMessagePortMessageFilter()); | 1113 GetMessagePortMessageFilter()); |
| 1115 } | 1114 } |
| 1116 | 1115 |
| 1117 void SetShouldDownloadFavicons(JNIEnv* env, jclass jclazz) { | 1116 void SetShouldDownloadFavicons(JNIEnv* env, jclass jclazz) { |
| 1118 g_should_download_favicons = true; | 1117 g_should_download_favicons = true; |
| 1119 } | 1118 } |
| 1120 | 1119 |
| 1121 } // namespace android_webview | 1120 } // namespace android_webview |
| OLD | NEW |