Incorporated Notification patch by Sergi Velez for choosing ringtone, and also icon. Nice work!

pull/14/head
Tim Su 16 years ago
parent 98a8970f53
commit 455baa195f

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.timsu.astrid"
android:versionCode="30"
android:versionName="1.9.5">
android:versionCode="31"
android:versionName="1.9.6">
<uses-permission android:name="android.permission.VIBRATE"/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -201,6 +201,9 @@
<skip />
<string name="p_notif_quietStart">notif_qstart</string>
<string name="p_notif_quietEnd">notif_qend</string>
<string name="key_notification_ringtone">notification_ringtone</string>
<string name="prefs_notification_title">Notification Ringtone</string>
<string name="prefs_notification_desc">Choose how Astrid alerts you!</string>
</resources>

@ -1,3 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<EditTextPreference
@ -8,4 +9,12 @@
android:key="@string/p_notif_quietEnd"
android:title="Quiet Hours End"
android:summary="Ending hour when Astrid should be quiet (e.g. 08)" />
<RingtonePreference
android:key="@string/key_notification_ringtone"
android:title="@string/prefs_notification_title"
android:summary="@string/prefs_notification_desc"
android:ringtoneType="notification"
android:showDefault="true"
android:showSilent="true"
/>
</PreferenceScreen>

@ -14,6 +14,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.database.Cursor;
import android.net.Uri;
import android.util.Log;
import com.timsu.astrid.R;
@ -317,18 +318,25 @@ public class Notifications extends BroadcastReceiver {
// create notification object
String appName = r.getString(R.string.app_name);
Notification notification = new Notification(
android.R.drawable.stat_notify_chat, reminder,
R.drawable.notification_icon, reminder,
System.currentTimeMillis());
notification.setLatestEventInfo(context,
appName,
reminder + " " + taskName,
pendingIntent);
notification.defaults = Notification.DEFAULT_LIGHTS;
if(quietHours) {
notification.vibrate = null;
notification.sound = null;
notification.defaults = Notification.DEFAULT_LIGHTS;
} else {
notification.defaults = Notification.DEFAULT_ALL;
notification.defaults |= Notification.DEFAULT_VIBRATE;
Uri notificationSound = Preferences.getNotificationRingtone(context);
if(notificationSound != null &&
!notificationSound.toString().equals("")) {
notification.sound = notificationSound;
} else {
notification.defaults |= Notification.DEFAULT_SOUND;
}
}
Log.w("Astrid", "Logging notification: " + reminder);

@ -4,6 +4,7 @@ import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.res.Resources;
import android.net.Uri;
import android.preference.PreferenceManager;
import com.timsu.astrid.R;
@ -51,4 +52,16 @@ public class Preferences {
return null;
}
}
public static Uri getNotificationRingtone(Context context) {
Resources r = context.getResources();
String value = getPrefs(context).getString(r.getString(
R.string.key_notification_ringtone), "");
try {
return Uri.parse(value);
} catch (RuntimeException e) {
return null;
}
}
}

Loading…
Cancel
Save