X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/2b00ff1c7eb24dffcd70ced6c33db8ecf90e3f57..c5d5b9d1d2e1697eaee5dbf4f933fd4c6d89d710:/src/eu/alefzero/owncloud/ui/activity/Preferences.java diff --git a/src/eu/alefzero/owncloud/ui/activity/Preferences.java b/src/eu/alefzero/owncloud/ui/activity/Preferences.java index 7de32270..e71dbdf0 100644 --- a/src/eu/alefzero/owncloud/ui/activity/Preferences.java +++ b/src/eu/alefzero/owncloud/ui/activity/Preferences.java @@ -22,11 +22,14 @@ import java.util.Vector; import android.accounts.Account; import android.accounts.AccountManager; import android.content.Intent; +import android.content.SharedPreferences; import android.os.Bundle; import android.preference.CheckBoxPreference; import android.preference.ListPreference; import android.preference.Preference; +import android.preference.PreferenceManager; import android.preference.Preference.OnPreferenceChangeListener; +import android.preference.Preference.OnPreferenceClickListener; import android.util.Log; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; @@ -44,6 +47,7 @@ import eu.alefzero.owncloud.OwnCloudSession; import eu.alefzero.owncloud.R; import eu.alefzero.owncloud.authenticator.AccountAuthenticator; import eu.alefzero.owncloud.db.DbHandler; +import eu.alefzero.owncloud.syncadapter.FileSyncAdapter; /** * An Activity that allows the user to change the application's settings. @@ -52,7 +56,7 @@ import eu.alefzero.owncloud.db.DbHandler; * */ public class Preferences extends SherlockPreferenceActivity implements - OnPreferenceChangeListener { + OnPreferenceChangeListener{ private static final String TAG = "OwnCloudPreferences"; private final int mNewSession = 47; private final int mEditSession = 48; @@ -62,6 +66,7 @@ public class Preferences extends SherlockPreferenceActivity implements private ListPreference mAccountList; private ListPreference mTrackingUpdateInterval; private CheckBoxPreference mDeviceTracking; + private CheckBoxPreference pCode; private int mSelectedMenuItem; @Override @@ -70,12 +75,58 @@ public class Preferences extends SherlockPreferenceActivity implements mDbHandler = new DbHandler(getBaseContext()); mSessions = new Vector(); addPreferencesFromResource(R.xml.preferences); - registerForContextMenu(getListView()); populateAccountList(); ActionBar actionBar = getSherlock().getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); + Preference p = findPreference("manage_account"); + if (p != null) + p.setOnPreferenceClickListener(new OnPreferenceClickListener() { + @Override + public boolean onPreferenceClick(Preference preference) { + Intent i = new Intent(getApplicationContext(), AccountSelectActivity.class); + startActivity(i); + return true; + } + }); + + pCode = (CheckBoxPreference) findPreference("set_pincode"); + + + if (pCode != null){ + + pCode.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + + Intent i = new Intent(getApplicationContext(), PinCodeActivity.class); + i.putExtra(PinCodeActivity.EXTRA_ACTIVITY, "preferences"); + i.putExtra(PinCodeActivity.EXTRA_NEW_STATE, newValue.toString()); + + startActivity(i); + + return true; + } + }); + + } + + } + + + @Override + protected void onResume() { + // TODO Auto-generated method stub + SharedPreferences appPrefs = PreferenceManager + .getDefaultSharedPreferences(getApplicationContext()); + + boolean state = appPrefs.getBoolean("set_pincode", false); + pCode.setChecked(state); + + super.onResume(); } + + /** * Populates the account selector */ @@ -102,6 +153,8 @@ public class Preferences extends SherlockPreferenceActivity implements mAccountList.setEntryValues(accNames); } + + @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); @@ -149,24 +202,13 @@ public class Preferences extends SherlockPreferenceActivity implements } @Override - public void onCreateContextMenu(ContextMenu menu, View v, - ContextMenuInfo menuInfo) { - super.onCreateContextMenu(menu, v, menuInfo); - AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo; - mSelectedMenuItem = info.position - 1; - menu.setHeaderTitle(mSessions.get(mSelectedMenuItem).getName()); - - MenuInflater inflater = getSherlock().getMenuInflater(); - inflater.inflate(R.menu.session_context_menu, (Menu) menu); - - } - - @Override protected void onDestroy() { mDbHandler.close(); super.onDestroy(); } + + @Override /** * Updates various summaries after updates. Also starts and stops @@ -195,8 +237,10 @@ public class Preferences extends SherlockPreferenceActivity implements locationServiceIntent.putExtra("TRACKING_SETTING", (Boolean) newValue); sendBroadcast(locationServiceIntent); - } + } return true; } + + }