OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/android/preferences/pref_service_bridge.h" | 5 #include "chrome/browser/android/preferences/pref_service_bridge.h" |
6 | 6 |
7 #include <jni.h> | 7 #include <jni.h> |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 648 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
659 } | 659 } |
660 | 660 |
661 static jboolean CanDeleteBrowsingHistory(JNIEnv* env, | 661 static jboolean CanDeleteBrowsingHistory(JNIEnv* env, |
662 const JavaParamRef<jobject>& obj) { | 662 const JavaParamRef<jobject>& obj) { |
663 return GetPrefService()->GetBoolean(prefs::kAllowDeletingBrowserHistory); | 663 return GetPrefService()->GetBoolean(prefs::kAllowDeletingBrowserHistory); |
664 } | 664 } |
665 | 665 |
666 static void FetchImportantSites(JNIEnv* env, | 666 static void FetchImportantSites(JNIEnv* env, |
667 const JavaParamRef<jclass>& clazz, | 667 const JavaParamRef<jclass>& clazz, |
668 const JavaParamRef<jobject>& java_callback) { | 668 const JavaParamRef<jobject>& java_callback) { |
| 669 std::vector<GURL> example_origins; |
669 std::vector<std::string> important_domains = | 670 std::vector<std::string> important_domains = |
670 ImportantSitesUtil::GetImportantRegisterableDomains(GetOriginalProfile(), | 671 ImportantSitesUtil::GetImportantRegisterableDomains( |
671 kMaxImportantSites); | 672 GetOriginalProfile(), kMaxImportantSites, &example_origins); |
672 ScopedJavaLocalRef<jobjectArray> string_array = | 673 ScopedJavaLocalRef<jobjectArray> java_domains = |
673 base::android::ToJavaArrayOfStrings(env, important_domains); | 674 base::android::ToJavaArrayOfStrings(env, important_domains); |
| 675 |
| 676 // We reuse the important domains vector to convert example origins to |
| 677 // strings. |
| 678 important_domains.resize(example_origins.size()); |
| 679 std::transform(example_origins.begin(), example_origins.end(), |
| 680 important_domains.begin(), |
| 681 [](const GURL& origin) { return origin.spec(); }); |
| 682 ScopedJavaLocalRef<jobjectArray> java_origins = |
| 683 base::android::ToJavaArrayOfStrings(env, important_domains); |
| 684 |
674 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( | 685 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( |
675 env, java_callback.obj(), string_array.obj()); | 686 env, java_callback.obj(), java_domains.obj(), java_origins.obj()); |
| 687 } |
| 688 |
| 689 static jint GetMaxImportantSites(JNIEnv* env, |
| 690 const JavaParamRef<jclass>& clazz) { |
| 691 return kMaxImportantSites; |
| 692 } |
| 693 |
| 694 static void MarkOriginAsImportantForTesting( |
| 695 JNIEnv* env, |
| 696 const JavaParamRef<jclass>& clazz, |
| 697 const JavaParamRef<jstring>& jorigin) { |
| 698 GURL origin(base::android::ConvertJavaStringToUTF8(jorigin)); |
| 699 CHECK(origin.is_valid()); |
| 700 ImportantSitesUtil::MarkOriginAsImportantForTesting(GetOriginalProfile(), |
| 701 origin); |
676 } | 702 } |
677 | 703 |
678 static void ShowNoticeAboutOtherFormsOfBrowsingHistory( | 704 static void ShowNoticeAboutOtherFormsOfBrowsingHistory( |
679 ScopedJavaGlobalRef<jobject>* listener, | 705 ScopedJavaGlobalRef<jobject>* listener, |
680 bool show) { | 706 bool show) { |
681 JNIEnv* env = AttachCurrentThread(); | 707 JNIEnv* env = AttachCurrentThread(); |
682 UMA_HISTOGRAM_BOOLEAN( | 708 UMA_HISTOGRAM_BOOLEAN( |
683 "History.ClearBrowsingData.HistoryNoticeShownInFooterWhenUpdated", show); | 709 "History.ClearBrowsingData.HistoryNoticeShownInFooterWhenUpdated", show); |
684 if (!show) | 710 if (!show) |
685 return; | 711 return; |
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1161 | 1187 |
1162 return ConvertJavaStringToUTF8(android_permission); | 1188 return ConvertJavaStringToUTF8(android_permission); |
1163 } | 1189 } |
1164 | 1190 |
1165 static void SetSupervisedUserId(JNIEnv* env, | 1191 static void SetSupervisedUserId(JNIEnv* env, |
1166 const JavaParamRef<jobject>& obj, | 1192 const JavaParamRef<jobject>& obj, |
1167 const JavaParamRef<jstring>& pref) { | 1193 const JavaParamRef<jstring>& pref) { |
1168 GetPrefService()->SetString(prefs::kSupervisedUserId, | 1194 GetPrefService()->SetString(prefs::kSupervisedUserId, |
1169 ConvertJavaStringToUTF8(env, pref)); | 1195 ConvertJavaStringToUTF8(env, pref)); |
1170 } | 1196 } |
OLD | NEW |