From 4d59783809752a013ebdd387dcc5984c2388487c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Mon, 11 Sep 2017 15:18:42 +0200 Subject: [PATCH] make LED blinking for notifications configurable --- .../uhabits/notifications/AndroidNotificationTray.kt | 7 ++++--- .../uhabits/preferences/SharedPreferencesStorage.kt | 2 ++ uhabits-android/src/main/res/values/strings.xml | 2 ++ uhabits-android/src/main/res/xml/preferences.xml | 6 ++++++ .../isoron/uhabits/core/preferences/Preferences.java | 11 +++++++++++ .../uhabits/core/preferences/PreferencesTest.java | 4 ++++ 6 files changed, 29 insertions(+), 3 deletions(-) diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/notifications/AndroidNotificationTray.kt b/uhabits-android/src/main/java/org/isoron/uhabits/notifications/AndroidNotificationTray.kt index 7558ef392..d06d0e320 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/notifications/AndroidNotificationTray.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/notifications/AndroidNotificationTray.kt @@ -72,7 +72,7 @@ class AndroidNotificationTray .addAction(checkAction) .addAction(snoozeAction) - val notification = NotificationCompat.Builder(context) + val builder = NotificationCompat.Builder(context) .setSmallIcon(R.drawable.ic_notification) .setContentTitle(habit.name) .setContentText(habit.description) @@ -85,8 +85,9 @@ class AndroidNotificationTray .setWhen(reminderTime) .setShowWhen(true) .setOngoing(preferences.shouldMakeNotificationsSticky()) - .setLights(Color.RED, 1000, 1000) - .build() + if (preferences.shouldMakeNotificationsLed()) + builder.setLights(Color.RED, 1000, 1000) + val notification = builder.build() val notificationManager = context.getSystemService( Activity.NOTIFICATION_SERVICE) as NotificationManager diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/preferences/SharedPreferencesStorage.kt b/uhabits-android/src/main/java/org/isoron/uhabits/preferences/SharedPreferencesStorage.kt index e72788398..cc7553deb 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/preferences/SharedPreferencesStorage.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/preferences/SharedPreferencesStorage.kt @@ -85,6 +85,8 @@ class SharedPreferencesStorage preferences.isCheckmarkSequenceReversed = getBoolean(key, false) "pref_sticky_notifications" -> preferences.setNotificationsSticky(getBoolean(key, false)) + "pref_led_notifications" -> + preferences.setNotificationsLed(getBoolean(key, false)) "pref_feature_sync" -> preferences.isSyncEnabled = getBoolean(key, false) } diff --git a/uhabits-android/src/main/res/values/strings.xml b/uhabits-android/src/main/res/values/strings.xml index 186e46fe0..1671734fd 100644 --- a/uhabits-android/src/main/res/values/strings.xml +++ b/uhabits-android/src/main/res/values/strings.xml @@ -188,6 +188,8 @@ Make notifications sticky Prevents notifications from being swiped away. + LED + Notifications blinking light. Repair database Database repaired. diff --git a/uhabits-android/src/main/res/xml/preferences.xml b/uhabits-android/src/main/res/xml/preferences.xml index 62a20f148..344da2801 100644 --- a/uhabits-android/src/main/res/xml/preferences.xml +++ b/uhabits-android/src/main/res/xml/preferences.xml @@ -68,6 +68,12 @@ android:title="@string/sticky_notifications" android:summary="@string/sticky_notifications_description"/> + +