X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/435b31ba4f3597cc7a43270cd4a54fb0180956c1..7c2174d09e376ecc5ebd9a510a66dc7582b173f9:/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 634f54b2..22c98767 100644 --- a/src/eu/alefzero/owncloud/ui/activity/Preferences.java +++ b/src/eu/alefzero/owncloud/ui/activity/Preferences.java @@ -17,20 +17,17 @@ */ package eu.alefzero.owncloud.ui.activity; -import java.net.URI; -import java.net.URISyntaxException; import java.util.Vector; import android.accounts.Account; import android.accounts.AccountManager; -import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.preference.CheckBoxPreference; import android.preference.ListPreference; import android.preference.Preference; import android.preference.Preference.OnPreferenceChangeListener; -import android.preference.PreferenceScreen; +import android.preference.Preference.OnPreferenceClickListener; import android.util.Log; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; @@ -74,47 +71,19 @@ 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); - - // Update summary for device tracking preference - mTrackingUpdateInterval = (ListPreference) findPreference("devicetracking_update_intervall"); - String trackingSummary = getResources().getString( - R.string.prefs_trackmydevice_interval_summary); - trackingSummary = String.format(trackingSummary, - mTrackingUpdateInterval.getValue()); - mTrackingUpdateInterval.setSummary(trackingSummary); - mTrackingUpdateInterval.setOnPreferenceChangeListener(this); - - // Enable or disable device tracking service. Listen on events - mDeviceTracking = (CheckBoxPreference) findPreference("enable_devicetracking"); - mDeviceTracking.setOnPreferenceChangeListener(this); - - // populateSessionList(); - } - - private void populateSessionList() { - mSessions.clear(); - mSessions = mDbHandler.getSessionList(); - PreferenceScreen ps = getPreferenceScreen(); - ps.removeAll(); - addPreferencesFromResource(R.xml.preferences); - for (int i = 0; i < mSessions.size(); i++) { - Preference preference = new Preference(getBaseContext()); - preference.setTitle(mSessions.get(i).getName()); - URI uri; - try { - uri = new URI(mSessions.get(i).getUrl()); - } catch (URISyntaxException e) { - e.printStackTrace(); // should never happen - continue; + 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; } - preference.setSummary(uri.getScheme() + "://" + uri.getHost() - + uri.getPath()); - ps.addPreference(preference); - } + }); } /** @@ -131,7 +100,7 @@ public class Preferences extends SherlockPreferenceActivity implements if (defaultAccount != null) { mAccountList.setSummary(defaultAccount.name); } - + // Transform accounts into array of string for preferences to use String[] accNames = new String[mAccounts.length]; for (int i = 0; i < mAccounts.length; i++) { @@ -146,8 +115,8 @@ public class Preferences extends SherlockPreferenceActivity implements @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); - MenuInflater inflater = getSherlock().getMenuInflater(); - inflater.inflate(R.menu.prefs_menu, menu); + //MenuInflater inflater = getSherlock().getMenuInflater(); + //inflater.inflate(R.menu.prefs_menu, menu); return true; } @@ -157,7 +126,8 @@ public class Preferences extends SherlockPreferenceActivity implements Intent intent; switch (item.getItemId()) { - case R.id.addSessionItem: + //case R.id.addSessionItem: + case 1: intent = new Intent(this, PreferencesNewSession.class); startActivityForResult(intent, mNewSession); break; @@ -171,15 +141,8 @@ public class Preferences extends SherlockPreferenceActivity implements .getUrl()); startActivityForResult(intent, mEditSession); break; - case R.id.SessionContextRemove: - OwnCloudSession ocs = mSessions.get(mSelectedMenuItem); - mDbHandler.removeSessionWithId(ocs.getEntryId()); - mSessions.remove(ocs); - getPreferenceScreen().removePreference( - getPreferenceScreen().getPreference(mSelectedMenuItem + 1)); - break; case android.R.id.home: - intent = new Intent(getBaseContext(), LandingActivity.class); + intent = new Intent(getBaseContext(), FileDisplayActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); break; @@ -193,37 +156,6 @@ public class Preferences extends SherlockPreferenceActivity implements @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); - if (resultCode == Activity.RESULT_OK) { - switch (requestCode) { - case mNewSession: - mDbHandler.addSession(data.getStringExtra("sessionName"), - data.getStringExtra("sessionURL")); - getPreferenceScreen().removeAll(); - addPreferencesFromResource(R.xml.preferences); - populateSessionList(); - break; - case mEditSession: - mDbHandler.changeSessionFields( - data.getIntExtra("sessionId", -1), - data.getStringExtra("sessionName"), - data.getStringExtra("sessionURL")); - populateSessionList(); - break; - } - } - } - - @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