From 455baa195f5435d2b68d6299ae44cc80b50df0eb Mon Sep 17 00:00:00 2001 From: Tim Su Date: Fri, 2 Jan 2009 11:54:49 +0000 Subject: [PATCH] Incorporated Notification patch by Sergi Velez for choosing ringtone, and also icon. Nice work! --- AndroidManifest.xml | 4 ++-- res/drawable/notification_icon.png | Bin 0 -> 1377 bytes res/values/strings.xml | 3 +++ res/xml/preferences.xml | 9 +++++++++ .../timsu/astrid/utilities/Notifications.java | 14 +++++++++++--- src/com/timsu/astrid/utilities/Preferences.java | 13 +++++++++++++ 6 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 res/drawable/notification_icon.png diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 910e20ab5..970c4b341 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="31" + android:versionName="1.9.6"> diff --git a/res/drawable/notification_icon.png b/res/drawable/notification_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d46377a344a8062d0154557c00eff2444effae2a GIT binary patch literal 1377 zcmV-n1)lneP)P000>X1^@s6#OZ}&00001b5ch_0Itp) z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXAu z5&$#YOTU@`00iMlL_t(Y$Gw(Yj9q0F$A9bFw=?JLb7e}WopNb2DGyRo42r2hhz}6a zh>3EE7(s>jAQz3k7)X!@eN(wbDa4cj!6zUwkQf4ePzz}S1xuiGfOhEIXy?{5XU?2` z`M$k;IGx%HQ;Q_7r!RZw`~SZG`qo-|!~Y@VOfMJj_&&8Ko?-c?w|?Cd^N<+MN5nUA zY-lzyK~OL~Rgm-^Fc0qdO@7Z02_D*U_K?|IZ^rYzVNYbA2vtN75fy_V1`#lUk7+bi zYE{v(v5&%scZ?)=-bU%sC;vNS`sVLac#$7@wu?w0h=_m)P!x!OS1Dsk5u#9}2~rfG z{I&AfQ`euhlgS&u^IH-5l^75aQ1E<1e9hMg*9{@_v&hk-XqtcsMFHu-Lrl)iUG(?D zjo$vu^T)OP)gU&r+r)^1h=>w2>$Gn87Uuo;(7kUW)`H0KQ+mcwuEzvve9P^B+;RVj zTB|~`+%=?6zyu!auDu%B`3l&)@67W+wVy-P{-(|ngU$|}s6wncGHmrvC)t3oo@%~MC7=9JH=L3xi2bg9P`e!=9ucf<75X^^5l z&*mfZq!ZH=g-h(ue|)l&Fbn~Vhy*}MRm*-DMjxk%9S%xZRctTAWf?PjK7gWNpzKqw zh8Pj%4|kdL)>8lSHs)Xb2g7B_{XhKqWXLh`x~dL{NGu{1QH@8Fu3TAd0?_O9cxQH) zi?;usQl*RndACQFWt`J$VA_iWQGl*nL+^YE?wy@jSr;1fjdo zCHm4ZL9NQn!UC1J!lGK5gDu)i9T=Nn?6GGF4!lb_uAUCbvMh_Dr~_P}sx2TEsLtkD zWJEx~_XYdrUiM!110;+<3tVTJv4us7+%Zr#oWHqFX;Y2qiG}=At1C^@nJ^3|fK4LO za;lZ8ADmmPRGM{c8cgYA0gF>Jc%qbIpMjw&QOU#e4XBc(mcaM&RZBR_vJWK)YU};* zwi{b(FZ*VF%@@1QDj?1|^4w99f`JVs5C!e`p|uWY9f;s^$G^r7kDO@=d+Wo}9j|`j z@;@b7kQa(Y$%}$YwZys&Ewtb7{n@oLRgSNPrS`H;eLOEm3%frn+)Fp?-}4Iq?*xc; zoHcv9okIuG-u|8K*$@nNlINEBnI*y~z-5+q56#RS=ymsX ztTi((JN)v|*%w#+o3moDU{_-D$7d=tt;?jo`v*WLSa^!Ejm)dWo zsU=G?+H+mG?(Nqvy=ipMmgf&oJ!@2@?D?f{w9dU37+C?V8dcBtj`htD5U)JnTB-f$ zpIf%+u8Y5_-);@vbwWoQ;Hn4C+x(aB4G#bEbN$*}+g$Ur*DkrjKCt jD)NCrfV$_O_1=F2@EtCWh~aXJ00000NkvXXu0mjf!Ofz# literal 0 HcmV?d00001 diff --git a/res/values/strings.xml b/res/values/strings.xml index 1f9eed120..6dbf17343 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -201,6 +201,9 @@ notif_qstart notif_qend + notification_ringtone +Notification Ringtone +Choose how Astrid alerts you! diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml index 9b6050173..86b140476 100644 --- a/res/xml/preferences.xml +++ b/res/xml/preferences.xml @@ -1,3 +1,4 @@ + + \ No newline at end of file diff --git a/src/com/timsu/astrid/utilities/Notifications.java b/src/com/timsu/astrid/utilities/Notifications.java index 48ed2d7d0..4564d0c62 100644 --- a/src/com/timsu/astrid/utilities/Notifications.java +++ b/src/com/timsu/astrid/utilities/Notifications.java @@ -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); diff --git a/src/com/timsu/astrid/utilities/Preferences.java b/src/com/timsu/astrid/utilities/Preferences.java index 800c3818a..253899265 100644 --- a/src/com/timsu/astrid/utilities/Preferences.java +++ b/src/com/timsu/astrid/utilities/Preferences.java @@ -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; + } + } }