Commit 14ea5d05 authored by Natalie Chouinard's avatar Natalie Chouinard Committed by Commit Bot

Expose kEnableDoNotTrack to Java via prefs.h

Bug: 1016957
Change-Id: I39013d322b6927fee2052b203473cbd081f4a179
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1890655
Commit-Queue: Natalie Chouinard <chouinard@chromium.org>
Reviewed-by: default avatarBrandon Wylie <wylieb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#711302}
parent 32318071
...@@ -318,13 +318,6 @@ public class PrefServiceBridge { ...@@ -318,13 +318,6 @@ public class PrefServiceBridge {
PrefServiceBridge.this); PrefServiceBridge.this);
} }
/**
* @return Whether Do Not Track is enabled
*/
public boolean isDoNotTrackEnabled() {
return PrefServiceBridgeJni.get().getDoNotTrackEnabled(PrefServiceBridge.this);
}
public boolean getPasswordEchoEnabled() { public boolean getPasswordEchoEnabled() {
return PrefServiceBridgeJni.get().getPasswordEchoEnabled(PrefServiceBridge.this); return PrefServiceBridgeJni.get().getPasswordEchoEnabled(PrefServiceBridge.this);
} }
...@@ -569,10 +562,6 @@ public class PrefServiceBridge { ...@@ -569,10 +562,6 @@ public class PrefServiceBridge {
setBoolean(Pref.BLOCK_THIRD_PARTY_COOKIES, enabled); setBoolean(Pref.BLOCK_THIRD_PARTY_COOKIES, enabled);
} }
public void setDoNotTrackEnabled(boolean enabled) {
PrefServiceBridgeJni.get().setDoNotTrackEnabled(PrefServiceBridge.this, enabled);
}
public void setNotificationsVibrateEnabled(boolean enabled) { public void setNotificationsVibrateEnabled(boolean enabled) {
PrefServiceBridgeJni.get().setNotificationsVibrateEnabled(PrefServiceBridge.this, enabled); PrefServiceBridgeJni.get().setNotificationsVibrateEnabled(PrefServiceBridge.this, enabled);
} }
...@@ -943,7 +932,6 @@ public class PrefServiceBridge { ...@@ -943,7 +932,6 @@ public class PrefServiceBridge {
boolean getAllowLocationUserModifiable(PrefServiceBridge caller); boolean getAllowLocationUserModifiable(PrefServiceBridge caller);
boolean getLocationAllowedByPolicy(PrefServiceBridge caller); boolean getLocationAllowedByPolicy(PrefServiceBridge caller);
boolean getAllowLocationManagedByCustodian(PrefServiceBridge caller); boolean getAllowLocationManagedByCustodian(PrefServiceBridge caller);
boolean getDoNotTrackEnabled(PrefServiceBridge caller);
boolean getPasswordEchoEnabled(PrefServiceBridge caller); boolean getPasswordEchoEnabled(PrefServiceBridge caller);
boolean getFirstRunEulaAccepted(PrefServiceBridge caller); boolean getFirstRunEulaAccepted(PrefServiceBridge caller);
boolean getCameraEnabled(PrefServiceBridge caller); boolean getCameraEnabled(PrefServiceBridge caller);
...@@ -979,7 +967,6 @@ public class PrefServiceBridge { ...@@ -979,7 +967,6 @@ public class PrefServiceBridge {
void setAllowCookiesEnabled(PrefServiceBridge caller, boolean enabled); void setAllowCookiesEnabled(PrefServiceBridge caller, boolean enabled);
void setBackgroundSyncEnabled(PrefServiceBridge caller, boolean enabled); void setBackgroundSyncEnabled(PrefServiceBridge caller, boolean enabled);
void setClipboardEnabled(PrefServiceBridge caller, boolean enabled); void setClipboardEnabled(PrefServiceBridge caller, boolean enabled);
void setDoNotTrackEnabled(PrefServiceBridge caller, boolean enabled);
boolean getAllowLocationEnabled(PrefServiceBridge caller); boolean getAllowLocationEnabled(PrefServiceBridge caller);
boolean getNotificationsEnabled(PrefServiceBridge caller); boolean getNotificationsEnabled(PrefServiceBridge caller);
boolean getNotificationsVibrateEnabled(PrefServiceBridge caller); boolean getNotificationsVibrateEnabled(PrefServiceBridge caller);
......
...@@ -9,6 +9,7 @@ import android.support.v7.preference.PreferenceFragmentCompat; ...@@ -9,6 +9,7 @@ import android.support.v7.preference.PreferenceFragmentCompat;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.preferences.ChromeSwitchPreference; import org.chromium.chrome.browser.preferences.ChromeSwitchPreference;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge; import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.preferences.PreferenceUtils; import org.chromium.chrome.browser.preferences.PreferenceUtils;
...@@ -16,6 +17,7 @@ import org.chromium.chrome.browser.preferences.PreferenceUtils; ...@@ -16,6 +17,7 @@ import org.chromium.chrome.browser.preferences.PreferenceUtils;
* Fragment to manage 'Do Not Track' preference and to explain to the user what it does. * Fragment to manage 'Do Not Track' preference and to explain to the user what it does.
*/ */
public class DoNotTrackPreference extends PreferenceFragmentCompat { public class DoNotTrackPreference extends PreferenceFragmentCompat {
// Must match key in do_not_track_preferences.xml.
private static final String PREF_DO_NOT_TRACK_SWITCH = "do_not_track_switch"; private static final String PREF_DO_NOT_TRACK_SWITCH = "do_not_track_switch";
@Override @Override
...@@ -26,11 +28,13 @@ public class DoNotTrackPreference extends PreferenceFragmentCompat { ...@@ -26,11 +28,13 @@ public class DoNotTrackPreference extends PreferenceFragmentCompat {
ChromeSwitchPreference doNotTrackSwitch = ChromeSwitchPreference doNotTrackSwitch =
(ChromeSwitchPreference) findPreference(PREF_DO_NOT_TRACK_SWITCH); (ChromeSwitchPreference) findPreference(PREF_DO_NOT_TRACK_SWITCH);
boolean isDoNotTrackEnabled = PrefServiceBridge.getInstance().isDoNotTrackEnabled(); boolean isDoNotTrackEnabled =
PrefServiceBridge.getInstance().getBoolean(Pref.ENABLE_DO_NOT_TRACK);
doNotTrackSwitch.setChecked(isDoNotTrackEnabled); doNotTrackSwitch.setChecked(isDoNotTrackEnabled);
doNotTrackSwitch.setOnPreferenceChangeListener((preference, newValue) -> { doNotTrackSwitch.setOnPreferenceChangeListener((preference, newValue) -> {
PrefServiceBridge.getInstance().setDoNotTrackEnabled((boolean) newValue); PrefServiceBridge.getInstance().setBoolean(
Pref.ENABLE_DO_NOT_TRACK, (boolean) newValue);
return true; return true;
}); });
} }
......
...@@ -108,8 +108,9 @@ public class PrivacyPreferences ...@@ -108,8 +108,9 @@ public class PrivacyPreferences
Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK); Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK);
if (doNotTrackPref != null) { if (doNotTrackPref != null) {
doNotTrackPref.setSummary( doNotTrackPref.setSummary(prefServiceBridge.getBoolean(Pref.ENABLE_DO_NOT_TRACK)
prefServiceBridge.isDoNotTrackEnabled() ? R.string.text_on : R.string.text_off); ? R.string.text_on
: R.string.text_off);
} }
Preference usageStatsPref = findPreference(PREF_USAGE_STATS); Preference usageStatsPref = findPreference(PREF_USAGE_STATS);
......
...@@ -351,12 +351,6 @@ static jboolean JNI_PrefServiceBridge_GetAutomaticDownloadsEnabled( ...@@ -351,12 +351,6 @@ static jboolean JNI_PrefServiceBridge_GetAutomaticDownloadsEnabled(
return GetBooleanForContentSetting(ContentSettingsType::AUTOMATIC_DOWNLOADS); return GetBooleanForContentSetting(ContentSettingsType::AUTOMATIC_DOWNLOADS);
} }
static jboolean JNI_PrefServiceBridge_GetDoNotTrackEnabled(
JNIEnv* env,
const JavaParamRef<jobject>& obj) {
return GetPrefService()->GetBoolean(prefs::kEnableDoNotTrack);
}
static jboolean JNI_PrefServiceBridge_GetNetworkPredictionEnabled( static jboolean JNI_PrefServiceBridge_GetNetworkPredictionEnabled(
JNIEnv* env, JNIEnv* env,
const JavaParamRef<jobject>& obj) { const JavaParamRef<jobject>& obj) {
...@@ -762,13 +756,6 @@ static jboolean JNI_PrefServiceBridge_CanPrefetchAndPrerender( ...@@ -762,13 +756,6 @@ static jboolean JNI_PrefServiceBridge_CanPrefetchAndPrerender(
chrome_browser_net::NetworkPredictionStatus::ENABLED; chrome_browser_net::NetworkPredictionStatus::ENABLED;
} }
static void JNI_PrefServiceBridge_SetDoNotTrackEnabled(
JNIEnv* env,
const JavaParamRef<jobject>& obj,
jboolean allow) {
GetPrefService()->SetBoolean(prefs::kEnableDoNotTrack, allow);
}
static ScopedJavaLocalRef<jstring> JNI_PrefServiceBridge_GetSyncLastAccountName( static ScopedJavaLocalRef<jstring> JNI_PrefServiceBridge_GetSyncLastAccountName(
JNIEnv* env, JNIEnv* env,
const JavaParamRef<jobject>& obj) { const JavaParamRef<jobject>& obj) {
......
...@@ -54,6 +54,7 @@ enum Pref { ...@@ -54,6 +54,7 @@ enum Pref {
CLICKED_UPDATE_MENU_ITEM, CLICKED_UPDATE_MENU_ITEM,
LATEST_VERSION_WHEN_CLICKED_UPDATE_MENU_ITEM, LATEST_VERSION_WHEN_CLICKED_UPDATE_MENU_ITEM,
BLOCK_THIRD_PARTY_COOKIES, BLOCK_THIRD_PARTY_COOKIES,
ENABLE_DO_NOT_TRACK,
// PREF_NUM_PREFS must be the last entry. // PREF_NUM_PREFS must be the last entry.
PREF_NUM_PREFS PREF_NUM_PREFS
}; };
...@@ -96,6 +97,8 @@ const char* const kPrefsExposedToJava[] = { ...@@ -96,6 +97,8 @@ const char* const kPrefsExposedToJava[] = {
prefs::kClickedUpdateMenuItem, prefs::kClickedUpdateMenuItem,
prefs::kLatestVersionWhenClickedUpdateMenuItem, prefs::kLatestVersionWhenClickedUpdateMenuItem,
prefs::kBlockThirdPartyCookies, prefs::kBlockThirdPartyCookies,
prefs::kEnableDoNotTrack,
}; };
#endif // CHROME_BROWSER_ANDROID_PREFERENCES_PREFS_H_ #endif // CHROME_BROWSER_ANDROID_PREFERENCES_PREFS_H_
...@@ -90,6 +90,7 @@ TEST_F(PrefsTest, TestIndex) { ...@@ -90,6 +90,7 @@ TEST_F(PrefsTest, TestIndex) {
GetPrefName(LATEST_VERSION_WHEN_CLICKED_UPDATE_MENU_ITEM)); GetPrefName(LATEST_VERSION_WHEN_CLICKED_UPDATE_MENU_ITEM));
EXPECT_EQ(prefs::kBlockThirdPartyCookies, EXPECT_EQ(prefs::kBlockThirdPartyCookies,
GetPrefName(BLOCK_THIRD_PARTY_COOKIES)); GetPrefName(BLOCK_THIRD_PARTY_COOKIES));
EXPECT_EQ(prefs::kEnableDoNotTrack, GetPrefName(ENABLE_DO_NOT_TRACK));
// If this check fails, a pref is missing a test case above. // If this check fails, a pref is missing a test case above.
EXPECT_EQ(Pref::PREF_NUM_PREFS, pref_count_); EXPECT_EQ(Pref::PREF_NUM_PREFS, pref_count_);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment