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/web_contents/web_contents_android.h" | 5 #include "content/browser/web_contents/web_contents_android.h" |
6 | 6 |
7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
8 #include "base/android/jni_string.h" | 8 #include "base/android/jni_string.h" |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/json/json_writer.h" | 10 #include "base/json/json_writer.h" |
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
317 | 317 |
318 std::vector<GURL>::const_iterator iter = entering_stylesheets.begin(); | 318 std::vector<GURL>::const_iterator iter = entering_stylesheets.begin(); |
319 for (; iter != entering_stylesheets.end(); ++iter) { | 319 for (; iter != entering_stylesheets.end(); ++iter) { |
320 ScopedJavaLocalRef<jstring> jstring_url( | 320 ScopedJavaLocalRef<jstring> jstring_url( |
321 ConvertUTF8ToJavaString(env, iter->spec())); | 321 ConvertUTF8ToJavaString(env, iter->spec())); |
322 Java_WebContentsImpl_addEnteringStylesheetToTransition( | 322 Java_WebContentsImpl_addEnteringStylesheetToTransition( |
323 env, obj_.obj(), jstring_url.obj()); | 323 env, obj_.obj(), jstring_url.obj()); |
324 } | 324 } |
325 } | 325 } |
326 | 326 |
327 void WebContentsAndroid::DidStartNavigationTransitionForFrame(int64 frame_id) { | 327 void WebContentsAndroid::DidStartNavigationTransitionForFrame( |
| 328 int64 frame_id, |
| 329 const TransitionLayerData& transition_data) { |
328 JNIEnv* env = AttachCurrentThread(); | 330 JNIEnv* env = AttachCurrentThread(); |
| 331 |
| 332 ScopedJavaLocalRef<jstring> jstring_css_selector( |
| 333 ConvertUTF8ToJavaString(env, transition_data.css_selector)); |
| 334 |
329 Java_WebContentsImpl_didStartNavigationTransitionForFrame( | 335 Java_WebContentsImpl_didStartNavigationTransitionForFrame( |
330 env, obj_.obj(), frame_id); | 336 env, obj_.obj(), frame_id, jstring_css_selector.obj()); |
| 337 |
| 338 std::vector<std::string>::const_iterator it = transition_data.names.begin(); |
| 339 std::vector<gfx::Rect>::const_iterator jt = transition_data.rects.begin(); |
| 340 for (; it != transition_data.names.end() && jt != transition_data.rects.end(); |
| 341 ++it, ++jt) { |
| 342 ScopedJavaLocalRef<jstring> jstring_name(ConvertUTF8ToJavaString(env, *it)); |
| 343 Java_WebContentsImpl_addNavigationTransitionElements( |
| 344 env, obj_.obj(), jstring_name.obj(), |
| 345 jt->x(), jt->y(), jt->width(), jt->height()); |
| 346 } |
331 } | 347 } |
332 | 348 |
333 void WebContentsAndroid::EvaluateJavaScript(JNIEnv* env, | 349 void WebContentsAndroid::EvaluateJavaScript(JNIEnv* env, |
334 jobject obj, | 350 jobject obj, |
335 jstring script, | 351 jstring script, |
336 jobject callback) { | 352 jobject callback) { |
337 RenderViewHost* rvh = web_contents_->GetRenderViewHost(); | 353 RenderViewHost* rvh = web_contents_->GetRenderViewHost(); |
338 DCHECK(rvh); | 354 DCHECK(rvh); |
339 | 355 |
340 if (!rvh->IsRenderViewLive()) { | 356 if (!rvh->IsRenderViewLive()) { |
(...skipping 16 matching lines...) Expand all Loading... |
357 ScopedJavaGlobalRef<jobject> j_callback; | 373 ScopedJavaGlobalRef<jobject> j_callback; |
358 j_callback.Reset(env, callback); | 374 j_callback.Reset(env, callback); |
359 content::RenderFrameHost::JavaScriptResultCallback js_callback = | 375 content::RenderFrameHost::JavaScriptResultCallback js_callback = |
360 base::Bind(&JavaScriptResultCallback, j_callback); | 376 base::Bind(&JavaScriptResultCallback, j_callback); |
361 | 377 |
362 web_contents_->GetMainFrame()->ExecuteJavaScript( | 378 web_contents_->GetMainFrame()->ExecuteJavaScript( |
363 ConvertJavaStringToUTF16(env, script), js_callback); | 379 ConvertJavaStringToUTF16(env, script), js_callback); |
364 } | 380 } |
365 | 381 |
366 } // namespace content | 382 } // namespace content |
OLD | NEW |