OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #include "content/browser/frame_host/navigation_controller_android.h" | 5 #include "content/browser/frame_host/navigation_controller_android.h" |
6 | 6 |
7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
8 #include "base/android/jni_array.h" | 8 #include "base/android/jni_array.h" |
9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
10 #include "content/browser/frame_host/navigation_entry_impl.h" | 10 #include "content/browser/frame_host/navigation_entry_impl.h" |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 jobject obj) { | 154 jobject obj) { |
155 navigation_controller_->CancelPendingReload(); | 155 navigation_controller_->CancelPendingReload(); |
156 } | 156 } |
157 | 157 |
158 void NavigationControllerAndroid::GoToNavigationIndex(JNIEnv* env, | 158 void NavigationControllerAndroid::GoToNavigationIndex(JNIEnv* env, |
159 jobject obj, | 159 jobject obj, |
160 jint index) { | 160 jint index) { |
161 navigation_controller_->GoToIndex(index); | 161 navigation_controller_->GoToIndex(index); |
162 } | 162 } |
163 | 163 |
164 void NavigationControllerAndroid::LoadUrl(JNIEnv* env, | 164 void NavigationControllerAndroid::LoadUrl( |
165 jobject obj, | 165 JNIEnv* env, |
166 jstring url, | 166 jobject obj, |
167 jint load_url_type, | 167 jstring url, |
168 jint transition_type, | 168 jint load_url_type, |
169 jstring j_referrer_url, | 169 jint transition_type, |
170 jint referrer_policy, | 170 jstring j_referrer_url, |
171 jint ua_override_option, | 171 jint referrer_policy, |
172 jstring extra_headers, | 172 jint ua_override_option, |
173 jbyteArray post_data, | 173 jstring extra_headers, |
174 jstring base_url_for_data_url, | 174 jbyteArray post_data, |
175 jstring virtual_url_for_data_url, | 175 jstring base_url_for_data_url, |
176 jboolean can_load_local_resources, | 176 jstring virtual_url_for_data_url, |
177 jboolean is_renderer_initiated) { | 177 jboolean can_load_local_resources, |
| 178 jboolean is_renderer_initiated, |
| 179 jboolean should_replace_current_entry) { |
178 DCHECK(url); | 180 DCHECK(url); |
179 NavigationController::LoadURLParams params( | 181 NavigationController::LoadURLParams params( |
180 GURL(ConvertJavaStringToUTF8(env, url))); | 182 GURL(ConvertJavaStringToUTF8(env, url))); |
181 | 183 |
182 params.load_type = | 184 params.load_type = |
183 static_cast<NavigationController::LoadURLType>(load_url_type); | 185 static_cast<NavigationController::LoadURLType>(load_url_type); |
184 params.transition_type = ui::PageTransitionFromInt(transition_type); | 186 params.transition_type = ui::PageTransitionFromInt(transition_type); |
185 params.override_user_agent = | 187 params.override_user_agent = |
186 static_cast<NavigationController::UserAgentOverrideOption>( | 188 static_cast<NavigationController::UserAgentOverrideOption>( |
187 ua_override_option); | 189 ua_override_option); |
188 params.can_load_local_resources = can_load_local_resources; | 190 params.can_load_local_resources = can_load_local_resources; |
189 params.is_renderer_initiated = is_renderer_initiated; | 191 params.is_renderer_initiated = is_renderer_initiated; |
| 192 params.should_replace_current_entry = should_replace_current_entry; |
190 | 193 |
191 if (extra_headers) | 194 if (extra_headers) |
192 params.extra_headers = ConvertJavaStringToUTF8(env, extra_headers); | 195 params.extra_headers = ConvertJavaStringToUTF8(env, extra_headers); |
193 | 196 |
194 if (post_data) { | 197 if (post_data) { |
195 std::vector<uint8> http_body_vector; | 198 std::vector<uint8> http_body_vector; |
196 base::android::JavaByteArrayToByteVector(env, post_data, &http_body_vector); | 199 base::android::JavaByteArrayToByteVector(env, post_data, &http_body_vector); |
197 params.browser_initiated_post_data = | 200 params.browser_initiated_post_data = |
198 base::RefCountedBytes::TakeVector(&http_body_vector); | 201 base::RefCountedBytes::TakeVector(&http_body_vector); |
199 } | 202 } |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
365 jobject obj, | 368 jobject obj, |
366 jlong source_navigation_controller_android, | 369 jlong source_navigation_controller_android, |
367 jboolean replace_entry) { | 370 jboolean replace_entry) { |
368 navigation_controller_->CopyStateFromAndPrune( | 371 navigation_controller_->CopyStateFromAndPrune( |
369 reinterpret_cast<NavigationControllerAndroid*>( | 372 reinterpret_cast<NavigationControllerAndroid*>( |
370 source_navigation_controller_android)->navigation_controller_, | 373 source_navigation_controller_android)->navigation_controller_, |
371 replace_entry); | 374 replace_entry); |
372 } | 375 } |
373 | 376 |
374 } // namespace content | 377 } // namespace content |
OLD | NEW |