Merge branch 'dev' of git://github.com/TruffelNL/uhabits into dev

# Conflicts:
#	uhabits-android/src/main/java/org/isoron/uhabits/notifications/AndroidNotificationTray.kt
pull/332/merge
Alinson S. Xavier 8 years ago
commit 5ccd546958

@ -23,6 +23,7 @@ import android.app.*
import android.content.* import android.content.*
import android.graphics.* import android.graphics.*
import android.graphics.BitmapFactory.* import android.graphics.BitmapFactory.*
import android.support.annotation.*
import android.support.v4.app.* import android.support.v4.app.*
import android.support.v4.app.NotificationCompat.* import android.support.v4.app.NotificationCompat.*
import org.isoron.androidbase.* import org.isoron.androidbase.*
@ -50,7 +51,20 @@ class AndroidNotificationTray
override fun showNotification(habit: Habit, override fun showNotification(habit: Habit,
notificationId: Int, notificationId: Int,
timestamp: Timestamp, timestamp: Timestamp,
reminderTime: Long) { reminderTime: Long)
{
val notificationManager = NotificationManagerCompat.from(context)
val summary = buildSummary(reminderTime)
notificationManager.notify(Int.MAX_VALUE, summary)
val notification = buildNotification(habit, reminderTime, timestamp)
notificationManager.notify(notificationId, notification)
}
@NonNull
fun buildNotification(@NonNull habit: Habit,
@NonNull reminderTime: Long,
@NonNull timestamp: Timestamp) : Notification
{
val checkAction = Action( val checkAction = Action(
R.drawable.ic_action_check, R.drawable.ic_action_check,
@ -85,13 +99,24 @@ class AndroidNotificationTray
.setWhen(reminderTime) .setWhen(reminderTime)
.setShowWhen(true) .setShowWhen(true)
.setOngoing(preferences.shouldMakeNotificationsSticky()) .setOngoing(preferences.shouldMakeNotificationsSticky())
.setGroup("default")
if (preferences.shouldMakeNotificationsLed()) if (preferences.shouldMakeNotificationsLed())
builder.setLights(Color.RED, 1000, 1000) builder.setLights(Color.RED, 1000, 1000)
val notificationManager = context.getSystemService( return builder.build()
Activity.NOTIFICATION_SERVICE) as NotificationManager }
notificationManager.notify(notificationId, builder.build()) @NonNull
private fun buildSummary(@NonNull reminderTime: Long) : Notification
{
return NotificationCompat.Builder(context)
.setSmallIcon(R.drawable.ic_notification)
.setContentTitle(context.getString(R.string.app_name))
.setWhen(reminderTime)
.setShowWhen(true)
.setGroup("default")
.setGroupSummary(true)
.build()
} }
} }

Loading…
Cancel
Save