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

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

Issue 923573003: Revert of [Android] Migrate javascript settings to a content setting from a pref. (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
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 395 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 scoped_ptr<translate::TranslatePrefs> translate_prefs = 406 scoped_ptr<translate::TranslatePrefs> translate_prefs =
407 ChromeTranslateClient::CreateTranslatePrefs(GetPrefService()); 407 ChromeTranslateClient::CreateTranslatePrefs(GetPrefService());
408 translate_prefs->ResetToDefaults(); 408 translate_prefs->ResetToDefaults();
409 } 409 }
410 410
411 static jboolean GetJavaScriptManaged(JNIEnv* env, jobject obj) { 411 static jboolean GetJavaScriptManaged(JNIEnv* env, jobject obj) {
412 return IsContentSettingManaged(CONTENT_SETTINGS_TYPE_JAVASCRIPT); 412 return IsContentSettingManaged(CONTENT_SETTINGS_TYPE_JAVASCRIPT);
413 } 413 }
414 414
415 static void SetJavaScriptEnabled(JNIEnv* env, jobject obj, jboolean enabled) { 415 static void SetJavaScriptEnabled(JNIEnv* env, jobject obj, jboolean enabled) {
416 HostContentSettingsMap* host_content_settings_map = 416 GetPrefService()->SetBoolean(prefs::kWebKitJavascriptEnabled, enabled);
417 GetOriginalProfile()->GetHostContentSettingsMap();
418 host_content_settings_map->SetDefaultContentSetting(
419 CONTENT_SETTINGS_TYPE_JAVASCRIPT,
420 enabled ? CONTENT_SETTING_ALLOW : CONTENT_SETTING_BLOCK);
421 } 417 }
422 418
423 static jboolean GetJavaScriptEnabled(JNIEnv* env, jobject obj) { 419 static jboolean GetJavaScriptEnabled(JNIEnv* env, jobject obj) {
424 return GetBooleanForContentSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT); 420 // The user pref for Javascript is stored in kWebKitJavascriptEnabled for
425 } 421 // historical reasons, but the content setting is where a possibly managed
426 422 // value will be enforced.
427 static void MigrateJavascriptPreference(JNIEnv* env, jobject obj) { 423 jboolean javascript_enabled =
428 const PrefService::Preference* javascript_pref = 424 GetBooleanForContentSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT);
429 GetPrefService()->FindPreference(prefs::kWebKitJavascriptEnabled); 425 if (!GetJavaScriptManaged(env, obj)) {
430 DCHECK(javascript_pref); 426 javascript_enabled &= GetPrefService()->GetBoolean(
431 427 prefs::kWebKitJavascriptEnabled);
432 if (!javascript_pref->HasUserSetting()) 428 }
433 return; 429 return javascript_enabled;
434
435 bool javascript_enabled = false;
436 bool retval = javascript_pref->GetValue()->GetAsBoolean(&javascript_enabled);
437 DCHECK(retval);
438 SetJavaScriptEnabled(env, obj, javascript_enabled);
439 GetPrefService()->ClearPref(prefs::kWebKitJavascriptEnabled);
440 } 430 }
441 431
442 static void SetPasswordEchoEnabled(JNIEnv* env, 432 static void SetPasswordEchoEnabled(JNIEnv* env,
443 jobject obj, 433 jobject obj,
444 jboolean passwordEchoEnabled) { 434 jboolean passwordEchoEnabled) {
445 GetPrefService()->SetBoolean(prefs::kWebKitPasswordEchoEnabled, 435 GetPrefService()->SetBoolean(prefs::kWebKitPasswordEchoEnabled,
446 passwordEchoEnabled); 436 passwordEchoEnabled);
447 } 437 }
448 438
449 static jboolean GetAllowPopupsEnabled(JNIEnv* env, jobject obj) { 439 static jboolean GetAllowPopupsEnabled(JNIEnv* env, jobject obj) {
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
708 jobject obj) { 698 jobject obj) {
709 return ConvertUTF8ToJavaString( 699 return ConvertUTF8ToJavaString(
710 env, 700 env,
711 GetPrefService()->GetString( 701 GetPrefService()->GetString(
712 prefs::kSupervisedUserSecondCustodianProfileImageURL)).Release(); 702 prefs::kSupervisedUserSecondCustodianProfileImageURL)).Release();
713 } 703 }
714 704
715 bool RegisterPrefServiceBridge(JNIEnv* env) { 705 bool RegisterPrefServiceBridge(JNIEnv* env) {
716 return RegisterNativesImpl(env); 706 return RegisterNativesImpl(env);
717 } 707 }
OLDNEW
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698