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 642 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
653 } | 653 } |
654 | 654 |
655 static jboolean CanDeleteBrowsingHistory(JNIEnv* env, | 655 static jboolean CanDeleteBrowsingHistory(JNIEnv* env, |
656 const JavaParamRef<jobject>& obj) { | 656 const JavaParamRef<jobject>& obj) { |
657 return GetPrefService()->GetBoolean(prefs::kAllowDeletingBrowserHistory); | 657 return GetPrefService()->GetBoolean(prefs::kAllowDeletingBrowserHistory); |
658 } | 658 } |
659 | 659 |
660 static void FetchImportantSites(JNIEnv* env, | 660 static void FetchImportantSites(JNIEnv* env, |
661 const JavaParamRef<jclass>& clazz, | 661 const JavaParamRef<jclass>& clazz, |
662 const JavaParamRef<jobject>& java_callback) { | 662 const JavaParamRef<jobject>& java_callback) { |
| 663 std::vector<GURL> example_origins; |
663 std::vector<std::string> important_domains = | 664 std::vector<std::string> important_domains = |
664 ImportantSitesUtil::GetImportantRegisterableDomains(GetOriginalProfile(), | 665 ImportantSitesUtil::GetImportantRegisterableDomains( |
665 kMaxImportantSites); | 666 GetOriginalProfile(), kMaxImportantSites, &example_origins); |
666 ScopedJavaLocalRef<jobjectArray> string_array = | 667 ScopedJavaLocalRef<jobjectArray> java_domains = |
667 base::android::ToJavaArrayOfStrings(env, important_domains); | 668 base::android::ToJavaArrayOfStrings(env, important_domains); |
| 669 |
| 670 // We reuse the important domains vector to convert example origins to |
| 671 // strings. |
| 672 important_domains.resize(example_origins.size()); |
| 673 std::transform(example_origins.begin(), example_origins.end(), |
| 674 important_domains.begin(), |
| 675 [](const GURL& origin) { return origin.spec(); }); |
| 676 ScopedJavaLocalRef<jobjectArray> java_origins = |
| 677 base::android::ToJavaArrayOfStrings(env, important_domains); |
| 678 |
668 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( | 679 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( |
669 env, java_callback.obj(), string_array.obj()); | 680 env, java_callback.obj(), java_domains.obj(), java_origins.obj()); |
| 681 } |
| 682 |
| 683 static jint GetMaxImportantSites(JNIEnv* env, |
| 684 const JavaParamRef<jclass>& clazz) { |
| 685 return kMaxImportantSites; |
| 686 } |
| 687 |
| 688 static void MarkOriginAsImportantForTesting( |
| 689 JNIEnv* env, |
| 690 const JavaParamRef<jclass>& clazz, |
| 691 const JavaParamRef<jstring>& jorigin) { |
| 692 GURL origin(base::android::ConvertJavaStringToUTF8(jorigin)); |
| 693 CHECK(origin.is_valid()); |
| 694 ImportantSitesUtil::MarkOriginAsImportantForTesting(GetOriginalProfile(), |
| 695 origin); |
670 } | 696 } |
671 | 697 |
672 static void ShowNoticeAboutOtherFormsOfBrowsingHistory( | 698 static void ShowNoticeAboutOtherFormsOfBrowsingHistory( |
673 ScopedJavaGlobalRef<jobject>* listener, | 699 ScopedJavaGlobalRef<jobject>* listener, |
674 bool show) { | 700 bool show) { |
675 JNIEnv* env = AttachCurrentThread(); | 701 JNIEnv* env = AttachCurrentThread(); |
676 UMA_HISTOGRAM_BOOLEAN( | 702 UMA_HISTOGRAM_BOOLEAN( |
677 "History.ClearBrowsingData.HistoryNoticeShownInFooterWhenUpdated", show); | 703 "History.ClearBrowsingData.HistoryNoticeShownInFooterWhenUpdated", show); |
678 if (!show) | 704 if (!show) |
679 return; | 705 return; |
(...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1143 | 1169 |
1144 return ConvertJavaStringToUTF8(android_permission); | 1170 return ConvertJavaStringToUTF8(android_permission); |
1145 } | 1171 } |
1146 | 1172 |
1147 static void SetSupervisedUserId(JNIEnv* env, | 1173 static void SetSupervisedUserId(JNIEnv* env, |
1148 const JavaParamRef<jobject>& obj, | 1174 const JavaParamRef<jobject>& obj, |
1149 const JavaParamRef<jstring>& pref) { | 1175 const JavaParamRef<jstring>& pref) { |
1150 GetPrefService()->SetString(prefs::kSupervisedUserId, | 1176 GetPrefService()->SetString(prefs::kSupervisedUserId, |
1151 ConvertJavaStringToUTF8(env, pref)); | 1177 ConvertJavaStringToUTF8(env, pref)); |
1152 } | 1178 } |
OLD | NEW |