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

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

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -201,6 +201,9 @@
<skip /> <skip />
<string name="p_notif_quietStart">notif_qstart</string> <string name="p_notif_quietStart">notif_qstart</string>
<string name="p_notif_quietEnd">notif_qend</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> </resources>

@ -1,3 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen <PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"> xmlns:android="http://schemas.android.com/apk/res/android">
<EditTextPreference <EditTextPreference
@ -8,4 +9,12 @@
android:key="@string/p_notif_quietEnd" android:key="@string/p_notif_quietEnd"
android:title="Quiet Hours End" android:title="Quiet Hours End"
android:summary="Ending hour when Astrid should be quiet (e.g. 08)" /> 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> </PreferenceScreen>

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

@ -4,6 +4,7 @@ import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor; import android.content.SharedPreferences.Editor;
import android.content.res.Resources; import android.content.res.Resources;
import android.net.Uri;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import com.timsu.astrid.R; import com.timsu.astrid.R;
@ -51,4 +52,16 @@ public class Preferences {
return null; 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