Some fixes to PIN code
[pub/Android/ownCloud.git] / src / eu / alefzero / owncloud / ui / activity / Preferences.java
index ffc1397..e71dbdf 100644 (file)
@@ -22,10 +22,12 @@ import java.util.Vector;
 import android.accounts.Account;\r
 import android.accounts.AccountManager;\r
 import android.content.Intent;\r
+import android.content.SharedPreferences;\r
 import android.os.Bundle;\r
 import android.preference.CheckBoxPreference;\r
 import android.preference.ListPreference;\r
 import android.preference.Preference;\r
+import android.preference.PreferenceManager;\r
 import android.preference.Preference.OnPreferenceChangeListener;\r
 import android.preference.Preference.OnPreferenceClickListener;\r
 import android.util.Log;\r
@@ -54,7 +56,7 @@ import eu.alefzero.owncloud.syncadapter.FileSyncAdapter;
  * \r
  */\r
 public class Preferences extends SherlockPreferenceActivity implements\r
-        OnPreferenceChangeListener {\r
+        OnPreferenceChangeListener{\r
     private static final String TAG = "OwnCloudPreferences";\r
     private final int mNewSession = 47;\r
     private final int mEditSession = 48;\r
@@ -64,6 +66,7 @@ public class Preferences extends SherlockPreferenceActivity implements
     private ListPreference mAccountList;\r
     private ListPreference mTrackingUpdateInterval;\r
     private CheckBoxPreference mDeviceTracking;\r
+    private CheckBoxPreference pCode;\r
     private int mSelectedMenuItem;\r
 \r
     @Override\r
@@ -86,17 +89,19 @@ public class Preferences extends SherlockPreferenceActivity implements
             }\r
         });\r
         \r
-        CheckBoxPreference pCode = (CheckBoxPreference) findPreference("set_pincode");\r
+        pCode = (CheckBoxPreference) findPreference("set_pincode");\r
+         \r
+        \r
         if (pCode != null){\r
             \r
             pCode.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {\r
                 @Override\r
                 public boolean onPreferenceChange(Preference preference, Object newValue) {\r
-                    \r
-                                        \r
+                                          \r
                     Intent i = new Intent(getApplicationContext(), PinCodeActivity.class);\r
                     i.putExtra(PinCodeActivity.EXTRA_ACTIVITY, "preferences");\r
                     i.putExtra(PinCodeActivity.EXTRA_NEW_STATE, newValue.toString());\r
+                    \r
                     startActivity(i);\r
                     \r
                     return true;\r
@@ -107,6 +112,21 @@ public class Preferences extends SherlockPreferenceActivity implements
         \r
     }\r
 \r
+\r
+    @Override\r
+    protected void onResume() {\r
+        // TODO Auto-generated method stub\r
+        SharedPreferences appPrefs = PreferenceManager\r
+                .getDefaultSharedPreferences(getApplicationContext());\r
+        \r
+        boolean state = appPrefs.getBoolean("set_pincode", false);\r
+        pCode.setChecked(state);\r
+        \r
+        super.onResume();\r
+    }\r
+\r
+\r
+\r
     /**\r
      * Populates the account selector\r
      */\r
@@ -133,6 +153,8 @@ public class Preferences extends SherlockPreferenceActivity implements
         mAccountList.setEntryValues(accNames);\r
     }\r
 \r
+    \r
+    \r
     @Override\r
     public boolean onCreateOptionsMenu(Menu menu) {\r
         super.onCreateOptionsMenu(menu);\r
@@ -185,6 +207,8 @@ public class Preferences extends SherlockPreferenceActivity implements
         super.onDestroy();\r
     }\r
 \r
+    \r
+    \r
     @Override\r
     /**\r
      * Updates various summaries after updates. Also starts and stops \r
@@ -213,8 +237,10 @@ public class Preferences extends SherlockPreferenceActivity implements
             locationServiceIntent.putExtra("TRACKING_SETTING",\r
                     (Boolean) newValue);\r
             sendBroadcast(locationServiceIntent);\r
-        }\r
+        } \r
         return true;\r
     }\r
+    \r
+    \r
 \r
 }\r