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 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 const JavaParamRef<jobject>& obj, | 187 const JavaParamRef<jobject>& obj, |
188 int content_settings_type, | 188 int content_settings_type, |
189 const JavaParamRef<jobject>& list) { | 189 const JavaParamRef<jobject>& list) { |
190 HostContentSettingsMap* host_content_settings_map = | 190 HostContentSettingsMap* host_content_settings_map = |
191 HostContentSettingsMapFactory::GetForProfile(GetOriginalProfile()); | 191 HostContentSettingsMapFactory::GetForProfile(GetOriginalProfile()); |
192 ContentSettingsForOneType entries; | 192 ContentSettingsForOneType entries; |
193 host_content_settings_map->GetSettingsForOneType( | 193 host_content_settings_map->GetSettingsForOneType( |
194 static_cast<ContentSettingsType>(content_settings_type), "", &entries); | 194 static_cast<ContentSettingsType>(content_settings_type), "", &entries); |
195 for (size_t i = 0; i < entries.size(); ++i) { | 195 for (size_t i = 0; i < entries.size(); ++i) { |
196 Java_PrefServiceBridge_addContentSettingExceptionToList( | 196 Java_PrefServiceBridge_addContentSettingExceptionToList( |
197 env, list, | 197 env, list, content_settings_type, |
198 content_settings_type, | 198 ConvertUTF8ToJavaString(env, entries[i].primary_pattern.ToString()), |
199 ConvertUTF8ToJavaString( | 199 entries[i].setting, ConvertUTF8ToJavaString(env, entries[i].source)); |
200 env, entries[i].primary_pattern.ToString()).obj(), | |
201 entries[i].setting, | |
202 ConvertUTF8ToJavaString(env, entries[i].source).obj()); | |
203 } | 200 } |
204 } | 201 } |
205 | 202 |
206 static jboolean GetAcceptCookiesEnabled(JNIEnv* env, | 203 static jboolean GetAcceptCookiesEnabled(JNIEnv* env, |
207 const JavaParamRef<jobject>& obj) { | 204 const JavaParamRef<jobject>& obj) { |
208 return GetBooleanForContentSetting(CONTENT_SETTINGS_TYPE_COOKIES); | 205 return GetBooleanForContentSetting(CONTENT_SETTINGS_TYPE_COOKIES); |
209 } | 206 } |
210 | 207 |
211 static jboolean GetAcceptCookiesManaged(JNIEnv* env, | 208 static jboolean GetAcceptCookiesManaged(JNIEnv* env, |
212 const JavaParamRef<jobject>& obj) { | 209 const JavaParamRef<jobject>& obj) { |
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
536 return; | 533 return; |
537 | 534 |
538 // We delete ourselves when done. | 535 // We delete ourselves when done. |
539 std::unique_ptr<ClearBrowsingDataObserver> auto_delete(this); | 536 std::unique_ptr<ClearBrowsingDataObserver> auto_delete(this); |
540 | 537 |
541 JNIEnv* env = AttachCurrentThread(); | 538 JNIEnv* env = AttachCurrentThread(); |
542 if (weak_chrome_native_preferences_.get(env).is_null()) | 539 if (weak_chrome_native_preferences_.get(env).is_null()) |
543 return; | 540 return; |
544 | 541 |
545 Java_PrefServiceBridge_browsingDataCleared( | 542 Java_PrefServiceBridge_browsingDataCleared( |
546 env, weak_chrome_native_preferences_.get(env).obj()); | 543 env, weak_chrome_native_preferences_.get(env)); |
547 } | 544 } |
548 | 545 |
549 private: | 546 private: |
550 int task_count_; | 547 int task_count_; |
551 JavaObjectWeakGlobalRef weak_chrome_native_preferences_; | 548 JavaObjectWeakGlobalRef weak_chrome_native_preferences_; |
552 ScopedObserver<BrowsingDataRemover, BrowsingDataRemover::Observer> observer_; | 549 ScopedObserver<BrowsingDataRemover, BrowsingDataRemover::Observer> observer_; |
553 }; | 550 }; |
554 | 551 |
555 } // namespace | 552 } // namespace |
556 | 553 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
640 break; | 637 break; |
641 case browsing_data::BOOKMARKS: | 638 case browsing_data::BOOKMARKS: |
642 // Bookmarks are deleted separately on the Java side. | 639 // Bookmarks are deleted separately on the Java side. |
643 NOTREACHED(); | 640 NOTREACHED(); |
644 break; | 641 break; |
645 case browsing_data::NUM_TYPES: | 642 case browsing_data::NUM_TYPES: |
646 NOTREACHED(); | 643 NOTREACHED(); |
647 } | 644 } |
648 } | 645 } |
649 std::vector<std::string> excluding_domains; | 646 std::vector<std::string> excluding_domains; |
650 base::android::AppendJavaStringArrayToStringVector( | 647 base::android::AppendJavaStringArrayToStringVector(env, jexcluding_domains, |
651 env, jexcluding_domains.obj(), &excluding_domains); | 648 &excluding_domains); |
652 std::unique_ptr<RegistrableDomainFilterBuilder> filter_builder( | 649 std::unique_ptr<RegistrableDomainFilterBuilder> filter_builder( |
653 new RegistrableDomainFilterBuilder(BrowsingDataFilterBuilder::BLACKLIST)); | 650 new RegistrableDomainFilterBuilder(BrowsingDataFilterBuilder::BLACKLIST)); |
654 for (const std::string& domain : excluding_domains) { | 651 for (const std::string& domain : excluding_domains) { |
655 filter_builder->AddRegisterableDomain(domain); | 652 filter_builder->AddRegisterableDomain(domain); |
656 } | 653 } |
657 | 654 |
658 if (!excluding_domains.empty()) { | 655 if (!excluding_domains.empty()) { |
659 ImportantSitesUtil::RecordMetricsForBlacklistedSites(GetOriginalProfile(), | 656 ImportantSitesUtil::RecordMetricsForBlacklistedSites(GetOriginalProfile(), |
660 excluding_domains); | 657 excluding_domains); |
661 } | 658 } |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
712 // We reuse the important domains vector to convert example origins to | 709 // We reuse the important domains vector to convert example origins to |
713 // strings. | 710 // strings. |
714 important_domains.resize(example_origins.size()); | 711 important_domains.resize(example_origins.size()); |
715 std::transform(example_origins.begin(), example_origins.end(), | 712 std::transform(example_origins.begin(), example_origins.end(), |
716 important_domains.begin(), | 713 important_domains.begin(), |
717 [](const GURL& origin) { return origin.spec(); }); | 714 [](const GURL& origin) { return origin.spec(); }); |
718 ScopedJavaLocalRef<jobjectArray> java_origins = | 715 ScopedJavaLocalRef<jobjectArray> java_origins = |
719 base::android::ToJavaArrayOfStrings(env, important_domains); | 716 base::android::ToJavaArrayOfStrings(env, important_domains); |
720 | 717 |
721 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( | 718 Java_ImportantSitesCallback_onImportantRegisterableDomainsReady( |
722 env, java_callback.obj(), java_domains.obj(), java_origins.obj()); | 719 env, java_callback, java_domains, java_origins); |
723 } | 720 } |
724 | 721 |
725 // This value should not change during a sessions, as it's used for UMA metrics. | 722 // This value should not change during a sessions, as it's used for UMA metrics. |
726 static jint GetMaxImportantSites(JNIEnv* env, | 723 static jint GetMaxImportantSites(JNIEnv* env, |
727 const JavaParamRef<jclass>& clazz) { | 724 const JavaParamRef<jclass>& clazz) { |
728 return kMaxImportantSites; | 725 return kMaxImportantSites; |
729 } | 726 } |
730 | 727 |
731 static void MarkOriginAsImportantForTesting( | 728 static void MarkOriginAsImportantForTesting( |
732 JNIEnv* env, | 729 JNIEnv* env, |
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1082 std::string os_version = version_info::GetOSType(); | 1079 std::string os_version = version_info::GetOSType(); |
1083 os_version += " " + AndroidAboutAppInfo::GetOsInfo(); | 1080 os_version += " " + AndroidAboutAppInfo::GetOsInfo(); |
1084 | 1081 |
1085 base::android::BuildInfo* android_build_info = | 1082 base::android::BuildInfo* android_build_info = |
1086 base::android::BuildInfo::GetInstance(); | 1083 base::android::BuildInfo::GetInstance(); |
1087 std::string application(android_build_info->package_label()); | 1084 std::string application(android_build_info->package_label()); |
1088 application.append(" "); | 1085 application.append(" "); |
1089 application.append(version_info::GetVersionNumber()); | 1086 application.append(version_info::GetVersionNumber()); |
1090 | 1087 |
1091 return Java_PrefServiceBridge_createAboutVersionStrings( | 1088 return Java_PrefServiceBridge_createAboutVersionStrings( |
1092 env, ConvertUTF8ToJavaString(env, application).obj(), | 1089 env, ConvertUTF8ToJavaString(env, application), |
1093 ConvertUTF8ToJavaString(env, os_version).obj()); | 1090 ConvertUTF8ToJavaString(env, os_version)); |
1094 } | 1091 } |
1095 | 1092 |
1096 static ScopedJavaLocalRef<jstring> GetSupervisedUserCustodianName( | 1093 static ScopedJavaLocalRef<jstring> GetSupervisedUserCustodianName( |
1097 JNIEnv* env, | 1094 JNIEnv* env, |
1098 const JavaParamRef<jobject>& obj) { | 1095 const JavaParamRef<jobject>& obj) { |
1099 return ConvertUTF8ToJavaString( | 1096 return ConvertUTF8ToJavaString( |
1100 env, GetPrefService()->GetString(prefs::kSupervisedUserCustodianName)); | 1097 env, GetPrefService()->GetString(prefs::kSupervisedUserCustodianName)); |
1101 } | 1098 } |
1102 | 1099 |
1103 static ScopedJavaLocalRef<jstring> GetSupervisedUserCustodianEmail( | 1100 static ScopedJavaLocalRef<jstring> GetSupervisedUserCustodianEmail( |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1199 | 1196 |
1200 return ConvertJavaStringToUTF8(android_permission); | 1197 return ConvertJavaStringToUTF8(android_permission); |
1201 } | 1198 } |
1202 | 1199 |
1203 static void SetSupervisedUserId(JNIEnv* env, | 1200 static void SetSupervisedUserId(JNIEnv* env, |
1204 const JavaParamRef<jobject>& obj, | 1201 const JavaParamRef<jobject>& obj, |
1205 const JavaParamRef<jstring>& pref) { | 1202 const JavaParamRef<jstring>& pref) { |
1206 GetPrefService()->SetString(prefs::kSupervisedUserId, | 1203 GetPrefService()->SetString(prefs::kSupervisedUserId, |
1207 ConvertJavaStringToUTF8(env, pref)); | 1204 ConvertJavaStringToUTF8(env, pref)); |
1208 } | 1205 } |
OLD | NEW |