Home | History | Annotate | Download | only in navigation_interception
      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
      3 // found in the LICENSE file.
      4 
      5 #include "components/navigation_interception/navigation_params_android.h"
      6 
      7 #include "base/android/jni_string.h"
      8 #include "jni/NavigationParams_jni.h"
      9 
     10 using base::android::ConvertUTF8ToJavaString;
     11 
     12 namespace navigation_interception {
     13 
     14 base::android::ScopedJavaLocalRef<jobject> CreateJavaNavigationParams(
     15     JNIEnv* env,
     16     const NavigationParams& params) {
     17   ScopedJavaLocalRef<jstring> jstring_url =
     18       ConvertUTF8ToJavaString(env, params.url().spec());
     19 
     20   return Java_NavigationParams_create(env,
     21                                       jstring_url.obj(),
     22                                       params.is_post(),
     23                                       params.has_user_gesture(),
     24                                       params.transition_type(),
     25                                       params.is_redirect());
     26 }
     27 
     28 // Register native methods.
     29 
     30 bool RegisterNavigationParams(JNIEnv* env) {
     31   return RegisterNativesImpl(env);
     32 }
     33 
     34 }  // namespace navigation_interception
     35