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
3 // found in the LICENSE file.
5 #include "chrome/browser/android/chromium_application.h"
7 #include "base/android/jni_android.h"
8 #include "base/android/jni_string.h"
9 #include "chrome/browser/android/tab_android.h"
10 #include "chrome/common/chrome_content_client.h"
11 #include "content/public/browser/web_contents.h"
12 #include "jni/ChromiumApplication_jni.h"
14 using base::android::ConvertUTF8ToJavaString;
16 static jstring GetBrowserUserAgent(JNIEnv* env, jclass clazz) {
17 return ConvertUTF8ToJavaString(env, GetUserAgent()).Release();
24 bool ChromiumApplication::RegisterBindings(JNIEnv* env) {
25 return RegisterNativesImpl(env);
28 void ChromiumApplication::OpenProtectedContentSettings() {
29 Java_ChromiumApplication_openProtectedContentSettings(
30 base::android::AttachCurrentThread(),
31 base::android::GetApplicationContext());
34 void ChromiumApplication::ShowSyncSettings() {
35 Java_ChromiumApplication_showSyncSettings(
36 base::android::AttachCurrentThread(),
37 base::android::GetApplicationContext());
40 void ChromiumApplication::ShowAutofillSettings() {
41 Java_ChromiumApplication_showAutofillSettings(
42 base::android::AttachCurrentThread(),
43 base::android::GetApplicationContext());
46 void ChromiumApplication::ShowPasswordSettings() {
47 Java_ChromiumApplication_showPasswordSettings(
48 base::android::AttachCurrentThread(),
49 base::android::GetApplicationContext());
52 void ChromiumApplication::ShowTermsOfServiceDialog() {
53 Java_ChromiumApplication_showTermsOfServiceDialog(
54 base::android::AttachCurrentThread(),
55 base::android::GetApplicationContext());
58 void ChromiumApplication::OpenClearBrowsingData(
59 content::WebContents* web_contents) {
60 TabAndroid* tab = TabAndroid::FromWebContents(web_contents);
62 Java_ChromiumApplication_openClearBrowsingData(
63 base::android::AttachCurrentThread(),
64 base::android::GetApplicationContext(),
65 tab->GetJavaObject().obj());
68 bool ChromiumApplication::AreParentalControlsEnabled() {
69 return Java_ChromiumApplication_areParentalControlsEnabled(
70 base::android::AttachCurrentThread(),
71 base::android::GetApplicationContext());
74 } // namespace android