[MDM] Adjust Do-Not-Track Restriction for new UI

Needed to move DNT initialization from GeneralPreferencesFragment
to PrivacySecurityPreferencesFragment.

Change-Id: I96eeeb8636accbf774b0569a3d1e953e7a14bf4e
diff --git a/src/com/android/browser/mdm/DoNotTrackRestriction.java b/src/com/android/browser/mdm/DoNotTrackRestriction.java
index 2f4a540..c1e5605 100644
--- a/src/com/android/browser/mdm/DoNotTrackRestriction.java
+++ b/src/com/android/browser/mdm/DoNotTrackRestriction.java
@@ -30,10 +30,14 @@
 
 package com.android.browser.mdm;
 
+import android.content.SharedPreferences;
 import android.os.Bundle;
 import android.preference.Preference;
 
-public class DoNotTrackRestriction extends Restriction {
+import com.android.browser.BrowserSettings;
+import com.android.browser.PreferenceKeys;
+
+public class DoNotTrackRestriction extends Restriction implements PreferenceKeys {
 
     private final static String TAG = "DoNotTrackRestriction";
 
@@ -60,6 +64,7 @@
 
     @Override
     public void enforce(Bundle restrictions) {
+        SharedPreferences.Editor editor = BrowserSettings.getInstance().getPreferences().edit();
         // Possible states
         //   DNT_enabled  DNT_value  |  menu-item-enabled      check-box-value
         //   -----------------------------------------------------------------
@@ -72,6 +77,9 @@
         if (dntEnabled) {
             mDntValue = restrictions.getBoolean(DO_NOT_TRACK_VALUE, true); // default to true
 
+            editor.putBoolean(PREF_DO_NOT_TRACK, mDntValue);
+            editor.apply();
+
             // enable the restriction : controls enable of the menu item
             // Log.i(TAG, "DNT Restriction enabled. new val [" + mDntValue + "]");
             enable(true);
diff --git a/src/com/android/browser/preferences/GeneralPreferencesFragment.java b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
index e9c62ac..f3128e2 100644
--- a/src/com/android/browser/preferences/GeneralPreferencesFragment.java
+++ b/src/com/android/browser/preferences/GeneralPreferencesFragment.java
@@ -48,7 +48,6 @@
 import com.android.browser.UrlUtils;
 import com.android.browser.homepages.HomeProvider;
 import com.android.browser.mdm.AutoFillRestriction;
-import com.android.browser.mdm.DoNotTrackRestriction;
 import com.android.browser.mdm.SearchEngineRestriction;
 
 public class GeneralPreferencesFragment extends SWEPreferenceFragment
@@ -106,8 +105,6 @@
         }
 
         // Register Preference objects with their MDM restriction handlers
-        DoNotTrackRestriction.getInstance().
-                registerPreference(findPreference(PreferenceKeys.PREF_DO_NOT_TRACK));
         AutoFillRestriction.getInstance().
                 registerPreference(findPreference(PreferenceKeys.PREF_AUTOFILL_ENABLED));
 
@@ -120,7 +117,6 @@
         super.onDestroy();
 
         // Un-register Preference objects from their MDM restriction handlers
-        DoNotTrackRestriction.getInstance().registerPreference(null);
         AutoFillRestriction.getInstance().registerPreference(null);
     }
 
diff --git a/src/com/android/browser/preferences/PrivacySecurityPreferencesFragment.java b/src/com/android/browser/preferences/PrivacySecurityPreferencesFragment.java
index 68c5607..7e02de0 100644
--- a/src/com/android/browser/preferences/PrivacySecurityPreferencesFragment.java
+++ b/src/com/android/browser/preferences/PrivacySecurityPreferencesFragment.java
@@ -18,6 +18,7 @@
 
 import com.android.browser.PreferenceKeys;
 import com.android.browser.R;
+import com.android.browser.mdm.DoNotTrackRestriction;
 
 import android.app.ActionBar;
 import android.app.Activity;
@@ -71,6 +72,18 @@
 
         readAndShowPermission("accept_third_cookies",
                 PermissionsServiceFactory.PermissionType.THIRDPARTYCOOKIES);
+
+        // Register Preference objects with their MDM restriction handlers
+        DoNotTrackRestriction.getInstance().
+                registerPreference(findPreference(PreferenceKeys.PREF_DO_NOT_TRACK));
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+
+        // Un-register Preference objects from their MDM restriction handlers
+        DoNotTrackRestriction.getInstance().registerPreference(null);
     }
 
     @Override