1 // Copyright (c) 2012 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 "content/browser/android/load_url_params.h" 6 7 #include <jni.h> 8 9 #include "base/android/jni_string.h" 10 #include "content/public/browser/navigation_controller.h" 11 #include "content/public/common/url_constants.h" 12 #include "jni/LoadUrlParams_jni.h" 13 #include "url/gurl.h" 14 15 namespace { 16 17 using content::NavigationController; 18 19 void RegisterConstants(JNIEnv* env) { 20 Java_LoadUrlParams_initializeConstants(env, 21 NavigationController::LOAD_TYPE_DEFAULT, 22 NavigationController::LOAD_TYPE_BROWSER_INITIATED_HTTP_POST, 23 NavigationController::LOAD_TYPE_DATA, 24 NavigationController::UA_OVERRIDE_INHERIT, 25 NavigationController::UA_OVERRIDE_FALSE, 26 NavigationController::UA_OVERRIDE_TRUE); 27 } 28 29 } // namespace 30 31 namespace content { 32 33 bool RegisterLoadUrlParams(JNIEnv* env) { 34 if (!RegisterNativesImpl(env)) 35 return false; 36 RegisterConstants(env); 37 return true; 38 } 39 40 jboolean IsDataScheme(JNIEnv* env, jclass clazz, jstring jurl) { 41 GURL url(base::android::ConvertJavaStringToUTF8(env, jurl)); 42 return url.SchemeIs(url::kDataScheme); 43 } 44 45 } // namespace content 46