Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(726)

Side by Side Diff: chrome/browser/android/preferences/pref_service_bridge.cc

Issue 902833003: Add a HostContentSettingsMap layer for Supervised Users. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 8
9 #include "base/android/build_info.h" 9 #include "base/android/build_info.h"
10 #include "base/android/jni_android.h" 10 #include "base/android/jni_android.h"
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 bool IsContentSettingManaged(ContentSettingsType content_settings_type) { 97 bool IsContentSettingManaged(ContentSettingsType content_settings_type) {
98 std::string source; 98 std::string source;
99 HostContentSettingsMap* content_settings = 99 HostContentSettingsMap* content_settings =
100 GetOriginalProfile()->GetHostContentSettingsMap(); 100 GetOriginalProfile()->GetHostContentSettingsMap();
101 content_settings->GetDefaultContentSetting(content_settings_type, &source); 101 content_settings->GetDefaultContentSetting(content_settings_type, &source);
102 HostContentSettingsMap::ProviderType provider = 102 HostContentSettingsMap::ProviderType provider =
103 content_settings->GetProviderTypeFromSource(source); 103 content_settings->GetProviderTypeFromSource(source);
104 return provider == HostContentSettingsMap::POLICY_PROVIDER; 104 return provider == HostContentSettingsMap::POLICY_PROVIDER;
105 } 105 }
106 106
107 bool IsContentSettingManagedByCustodian(
108 ContentSettingsType content_settings_type) {
109 std::string source;
110 HostContentSettingsMap* content_settings =
111 GetOriginalProfile()->GetHostContentSettingsMap();
112 content_settings->GetDefaultContentSetting(content_settings_type, &source);
113 HostContentSettingsMap::ProviderType provider =
114 content_settings->GetProviderTypeFromSource(source);
115 return provider == HostContentSettingsMap::SUPERVISED_PROVIDER;
116 }
117
107 bool IsContentSettingUserModifiable(ContentSettingsType content_settings_type) { 118 bool IsContentSettingUserModifiable(ContentSettingsType content_settings_type) {
108 std::string source; 119 std::string source;
109 HostContentSettingsMap* content_settings = 120 HostContentSettingsMap* content_settings =
110 GetOriginalProfile()->GetHostContentSettingsMap(); 121 GetOriginalProfile()->GetHostContentSettingsMap();
111 content_settings->GetDefaultContentSetting(content_settings_type, &source); 122 content_settings->GetDefaultContentSetting(content_settings_type, &source);
112 HostContentSettingsMap::ProviderType provider = 123 HostContentSettingsMap::ProviderType provider =
113 content_settings->GetProviderTypeFromSource(source); 124 content_settings->GetProviderTypeFromSource(source);
114 return provider >= HostContentSettingsMap::PREF_PROVIDER; 125 return provider >= HostContentSettingsMap::PREF_PROVIDER;
115 } 126 }
116 127
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 GetPrefService()->GetBoolean(prefs::kGeolocationEnabled); 234 GetPrefService()->GetBoolean(prefs::kGeolocationEnabled);
224 } 235 }
225 236
226 static jboolean GetAllowLocationUserModifiable(JNIEnv* env, jobject obj) { 237 static jboolean GetAllowLocationUserModifiable(JNIEnv* env, jobject obj) {
227 return IsContentSettingUserModifiable(CONTENT_SETTINGS_TYPE_GEOLOCATION) && 238 return IsContentSettingUserModifiable(CONTENT_SETTINGS_TYPE_GEOLOCATION) &&
228 GetPrefService()->IsUserModifiablePreference( 239 GetPrefService()->IsUserModifiablePreference(
229 prefs::kGeolocationEnabled); 240 prefs::kGeolocationEnabled);
230 } 241 }
231 242
232 static jboolean GetAllowLocationManagedByCustodian(JNIEnv* env, jobject obj) { 243 static jboolean GetAllowLocationManagedByCustodian(JNIEnv* env, jobject obj) {
233 return GetPrefService()->IsPreferenceManagedByCustodian( 244 return IsContentSettingManagedByCustodian(CONTENT_SETTINGS_TYPE_GEOLOCATION);
234 prefs::kGeolocationEnabled);
235 } 245 }
236 246
237 static jboolean GetResolveNavigationErrorEnabled(JNIEnv* env, jobject obj) { 247 static jboolean GetResolveNavigationErrorEnabled(JNIEnv* env, jobject obj) {
238 return GetPrefService()->GetBoolean(prefs::kAlternateErrorPagesEnabled); 248 return GetPrefService()->GetBoolean(prefs::kAlternateErrorPagesEnabled);
239 } 249 }
240 250
241 static jboolean GetResolveNavigationErrorManaged(JNIEnv* env, jobject obj) { 251 static jboolean GetResolveNavigationErrorManaged(JNIEnv* env, jobject obj) {
242 return GetPrefService()->IsManagedPreference( 252 return GetPrefService()->IsManagedPreference(
243 prefs::kAlternateErrorPagesEnabled); 253 prefs::kAlternateErrorPagesEnabled);
244 } 254 }
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 } 470 }
461 471
462 static jboolean GetCameraMicUserModifiable(JNIEnv* env, jobject obj) { 472 static jboolean GetCameraMicUserModifiable(JNIEnv* env, jobject obj) {
463 PrefService* prefs = GetPrefService(); 473 PrefService* prefs = GetPrefService();
464 return IsContentSettingUserModifiable(CONTENT_SETTINGS_TYPE_MEDIASTREAM) && 474 return IsContentSettingUserModifiable(CONTENT_SETTINGS_TYPE_MEDIASTREAM) &&
465 prefs->IsUserModifiablePreference(prefs::kAudioCaptureAllowed) && 475 prefs->IsUserModifiablePreference(prefs::kAudioCaptureAllowed) &&
466 prefs->IsUserModifiablePreference(prefs::kVideoCaptureAllowed); 476 prefs->IsUserModifiablePreference(prefs::kVideoCaptureAllowed);
467 } 477 }
468 478
469 static jboolean GetCameraMicManagedByCustodian(JNIEnv* env, jobject obj) { 479 static jboolean GetCameraMicManagedByCustodian(JNIEnv* env, jobject obj) {
470 PrefService* prefs = GetPrefService(); 480 return IsContentSettingManagedByCustodian(CONTENT_SETTINGS_TYPE_MEDIASTREAM);
471 if (prefs->IsPreferenceManagedByCustodian(prefs::kVideoCaptureAllowed))
472 return true;
473 if (prefs->IsPreferenceManagedByCustodian(prefs::kAudioCaptureAllowed))
474 return true;
475 return false;
476 } 481 }
477 482
478 static jboolean GetAutologinEnabled(JNIEnv* env, jobject obj) { 483 static jboolean GetAutologinEnabled(JNIEnv* env, jobject obj) {
479 return GetPrefService()->GetBoolean(prefs::kAutologinEnabled); 484 return GetPrefService()->GetBoolean(prefs::kAutologinEnabled);
480 } 485 }
481 486
482 static void SetAutologinEnabled(JNIEnv* env, jobject obj, 487 static void SetAutologinEnabled(JNIEnv* env, jobject obj,
483 jboolean autologinEnabled) { 488 jboolean autologinEnabled) {
484 GetPrefService()->SetBoolean(prefs::kAutologinEnabled, autologinEnabled); 489 GetPrefService()->SetBoolean(prefs::kAutologinEnabled, autologinEnabled);
485 } 490 }
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
698 jobject obj) { 703 jobject obj) {
699 return ConvertUTF8ToJavaString( 704 return ConvertUTF8ToJavaString(
700 env, 705 env,
701 GetPrefService()->GetString( 706 GetPrefService()->GetString(
702 prefs::kSupervisedUserSecondCustodianProfileImageURL)).Release(); 707 prefs::kSupervisedUserSecondCustodianProfileImageURL)).Release();
703 } 708 }
704 709
705 bool RegisterPrefServiceBridge(JNIEnv* env) { 710 bool RegisterPrefServiceBridge(JNIEnv* env) {
706 return RegisterNativesImpl(env); 711 return RegisterNativesImpl(env);
707 } 712 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698