From 95d3536887151075d7bb8af59dcf67040b42cb50 Mon Sep 17 00:00:00 2001 From: Ricky Barrette Date: Fri, 25 May 2012 11:36:28 -0400 Subject: [PATCH] Ringtone names ringtone names are no longer saved into the database. closes #72 Signed-off-by: Ricky Barrette --- LocationRinger/res/values/strings.xml | 1 + .../LocationRinger/db/RingerDatabase.java | 2 + .../ui/fragments/RingtoneFragment.java | 43 +++++++++---------- 3 files changed, 24 insertions(+), 22 deletions(-) diff --git a/LocationRinger/res/values/strings.xml b/LocationRinger/res/values/strings.xml index a21cd48..d5c7ee4 100644 --- a/LocationRinger/res/values/strings.xml +++ b/LocationRinger/res/values/strings.xml @@ -88,5 +88,6 @@ Delete Ringer Name Start Location Service + Select Tone \ No newline at end of file diff --git a/LocationRinger/src/com/TwentyCodes/android/LocationRinger/db/RingerDatabase.java b/LocationRinger/src/com/TwentyCodes/android/LocationRinger/db/RingerDatabase.java index 0ef472d..c24fa36 100644 --- a/LocationRinger/src/com/TwentyCodes/android/LocationRinger/db/RingerDatabase.java +++ b/LocationRinger/src/com/TwentyCodes/android/LocationRinger/db/RingerDatabase.java @@ -62,7 +62,9 @@ public class RingerDatabase { public final static String KEY_LOCATION_LAT = "location_lat"; public final static String KEY_LOCATION_LON = "location_lon"; public final static String KEY_RINGER_NAME = "ringer_name"; + @Deprecated public final static String KEY_RINGTONE = "home_ringtone"; + @Deprecated public final static String KEY_NOTIFICATION_RINGTONE = "notification_ringtone"; public final static String KEY_RINGTONE_IS_SILENT = "ringtone_is_silent"; public final static String KEY_NOTIFICATION_IS_SILENT = "notification_is_silent"; diff --git a/LocationRinger/src/com/TwentyCodes/android/LocationRinger/ui/fragments/RingtoneFragment.java b/LocationRinger/src/com/TwentyCodes/android/LocationRinger/ui/fragments/RingtoneFragment.java index 146ecc9..097e847 100644 --- a/LocationRinger/src/com/TwentyCodes/android/LocationRinger/ui/fragments/RingtoneFragment.java +++ b/LocationRinger/src/com/TwentyCodes/android/LocationRinger/ui/fragments/RingtoneFragment.java @@ -45,12 +45,11 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee private final OnContentChangedListener mListener; private final String mKeyEnabled; private final String mKeyUri; - private final String mKeyRingtone; private final String mKeyVolume; private final ContentValues mInfo; private final int mLabel; private EditText mRingtone; - private String mRingtoneURI; + private Uri mRingtoneURI; private SeekBar mVolume; public RingtoneFragment(ContentValues info, OnContentChangedListener listener, int stream){ @@ -63,7 +62,6 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee case AudioManager.STREAM_NOTIFICATION: mKeyEnabled = RingerDatabase.KEY_NOTIFICATION_IS_SILENT; mKeyUri = RingerDatabase.KEY_NOTIFICATION_RINGTONE_URI; - mKeyRingtone = RingerDatabase.KEY_NOTIFICATION_RINGTONE; mKeyVolume = RingerDatabase.KEY_NOTIFICATION_RINGTONE_VOLUME; mLabel = R.string.notification_ringtone; mType = RingtoneManager.TYPE_NOTIFICATION; @@ -73,13 +71,11 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee default: mKeyEnabled = RingerDatabase.KEY_RINGTONE_IS_SILENT; mKeyUri = RingerDatabase.KEY_RINGTONE_URI; - mKeyRingtone = RingerDatabase.KEY_RINGTONE; mKeyVolume = RingerDatabase.KEY_RINGTONE_VOLUME; mLabel = R.string.ringtone; mType = RingtoneManager.TYPE_RINGTONE; break; } - } /** @@ -91,7 +87,7 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee private void getRingtoneURI(int ringtoneCode, String uri){ final Intent intent = new Intent( RingtoneManager.ACTION_RINGTONE_PICKER); intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, ringtoneCode); - intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone"); + intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, R.string.select_tone); intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, true); intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, false); if( uri == null) @@ -112,8 +108,6 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee private void notifyRingtoneChanged(Uri tone) { if(this.mListener != null){ ContentValues info = new ContentValues(); - info.put(this.mKeyRingtone, tone == null - ? getString(R.string.silent) : RingtoneManager.getRingtone(this.getActivity(), Uri.parse(tone.toString())).getTitle(this.getActivity())); info.put(this.mKeyUri, tone != null ? tone.toString() : null); info.put(mKeyEnabled, tone == null); this.mListener.onInfoContentChanged(info); @@ -161,7 +155,7 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee */ @Override public void onClick(View v) { - getRingtoneURI(this.mType, mRingtoneURI); + getRingtoneURI(this.mType, mRingtoneURI.toString()); } @Override @@ -188,20 +182,25 @@ public class RingtoneFragment extends Fragment implements OnClickListener, OnSee /* * ringtone & uri */ - if(this.mInfo.containsKey(this.mKeyUri) && this.mInfo.containsKey(this.mKeyRingtone)){ - this.mRingtone.setText(this.mInfo.getAsString(this.mKeyRingtone)); - this.mRingtoneURI = this.mInfo.getAsString(this.mKeyUri); - this.mVolume.setEnabled(this.mInfo.getAsString(this.mKeyUri) != null); - } else - try { - notifyRingtoneChanged(RingtoneManager.getActualDefaultRingtoneUri(this.getActivity(), mType)); - this.mRingtoneURI = RingtoneManager.getActualDefaultRingtoneUri(this.getActivity(), mType).toString(); - this.mRingtone.setText(RingtoneManager.getRingtone(this.getActivity(), Uri.parse(mRingtoneURI)).getTitle(this.getActivity())); - } catch (NullPointerException e) { - mVolume.setEnabled(false); - mRingtone.setText(R.string.silent); - mVolume.setProgress(0); + if(this.mInfo.containsKey(this.mKeyUri)){ + try{ + this.mRingtoneURI = Uri.parse(this.mInfo.getAsString(this.mKeyUri)); + } catch (NullPointerException e){ + this.mRingtoneURI = null; } + this.mVolume.setEnabled(this.mInfo.getAsString(this.mKeyUri) != null); + } else { + this.mRingtoneURI = RingtoneManager.getActualDefaultRingtoneUri(this.getActivity(), mType); + notifyRingtoneChanged(this.mRingtoneURI); + } + + try { + this.mRingtone.setText(RingtoneManager.getRingtone(this.getActivity(), mRingtoneURI).getTitle(this.getActivity())); + } catch (NullPointerException e) { + mVolume.setEnabled(false); + mRingtone.setText(R.string.silent); + mVolume.setProgress(0); + } /* * volume