*/
package com.owncloud.android.ui.activity;
-import java.util.Vector;
-
import android.accounts.Account;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
-import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.Preference.OnPreferenceClickListener;
import com.actionbarsherlock.app.SherlockPreferenceActivity;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
-import com.owncloud.android.Log_OC;
-import com.owncloud.android.OwnCloudSession;
import com.owncloud.android.R;
import com.owncloud.android.authentication.AccountUtils;
import com.owncloud.android.db.DbHandler;
+import com.owncloud.android.utils.DisplayUtils;
+import com.owncloud.android.utils.Log_OC;
/**
* An Activity that allows the user to change the application's settings.
*
* @author Bartek Przybylski
- *
+ * @author David A. Velasco
*/
-public class Preferences extends SherlockPreferenceActivity implements OnPreferenceChangeListener {
+public class Preferences extends SherlockPreferenceActivity {
private static final String TAG = "OwnCloudPreferences";
- private final int mNewSession = 47;
- private final int mEditSession = 48;
private DbHandler mDbHandler;
- private Vector<OwnCloudSession> mSessions;
- private ListPreference mTrackingUpdateInterval;
- private CheckBoxPreference mDeviceTracking;
private CheckBoxPreference pCode;
//private CheckBoxPreference pLogging;
//private Preference pLoggingHistory;
private Preference pAboutApp;
- private int mSelectedMenuItem;
@SuppressWarnings("deprecation")
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mDbHandler = new DbHandler(getBaseContext());
- mSessions = new Vector<OwnCloudSession>();
addPreferencesFromResource(R.xml.preferences);
//populateAccountList();
ActionBar actionBar = getSherlock().getActionBar();
+ actionBar.setIcon(DisplayUtils.getSeasonalIconId());
actionBar.setDisplayHomeAsUpEnabled(true);
Preference p = findPreference("manage_account");
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setType("text/plain");
- //Account currentAccount = AccountUtils.getCurrentOwnCloudAccount(Preferences.this);
+ intent.setData(Uri.parse(getString(R.string.mail_recommend)));
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+
String appName = getString(R.string.app_name);
- //String username = currentAccount.name.substring(0, currentAccount.name.lastIndexOf('@'));
- //String recommendSubject = String.format(getString(R.string.recommend_subject), username, appName);
+ String downloadUrl = getString(R.string.url_app_download);
+ Account currentAccount = AccountUtils.getCurrentOwnCloudAccount(Preferences.this);
+ String username = currentAccount.name.substring(0, currentAccount.name.lastIndexOf('@'));
+
String recommendSubject = String.format(getString(R.string.recommend_subject), appName);
+ String recommendText = String.format(getString(R.string.recommend_text), appName, downloadUrl, username);
+
intent.putExtra(Intent.EXTRA_SUBJECT, recommendSubject);
- //String recommendText = String.format(getString(R.string.recommend_text), getString(R.string.app_name), username);
- String recommendText = String.format(getString(R.string.recommend_text), getString(R.string.app_name), getString(R.string.url_app_download));
intent.putExtra(Intent.EXTRA_TEXT, recommendText);
-
- intent.setData(Uri.parse(getString(R.string.mail_recommend)));
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Intent intent;
switch (item.getItemId()) {
- //case R.id.addSessionItem:
- case 1:
- intent = new Intent(this, PreferencesNewSession.class);
- startActivityForResult(intent, mNewSession);
- break;
- case R.id.SessionContextEdit:
- intent = new Intent(this, PreferencesNewSession.class);
- intent.putExtra("sessionId", mSessions.get(mSelectedMenuItem)
- .getEntryId());
- intent.putExtra("sessionName", mSessions.get(mSelectedMenuItem)
- .getName());
- intent.putExtra("sessionURL", mSessions.get(mSelectedMenuItem)
- .getUrl());
- startActivityForResult(intent, mEditSession);
- break;
case android.R.id.home:
intent = new Intent(getBaseContext(), FileDisplayActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
super.onDestroy();
}
- @Override
- /**
- * Updates various summaries after updates. Also starts and stops
- * the
- */
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- // Update current account summary
- /*if (preference.equals(mAccountList)) {
- mAccountList.setSummary(newValue.toString());
- }
-
- // Update tracking interval summary
- else*/ if (preference.equals(mTrackingUpdateInterval)) {
- String trackingSummary = getResources().getString(
- R.string.prefs_trackmydevice_interval_summary);
- trackingSummary = String.format(trackingSummary,
- newValue.toString());
- mTrackingUpdateInterval.setSummary(trackingSummary);
- }
-
- // Start or stop tracking service
- else if (preference.equals(mDeviceTracking)) {
- Intent locationServiceIntent = new Intent();
- locationServiceIntent
- .setAction("com.owncloud.android.location.LocationLauncher");
- locationServiceIntent.putExtra("TRACKING_SETTING",
- (Boolean) newValue);
- sendBroadcast(locationServiceIntent);
- }
- return true;
- }
}