aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Heckel <pheckel@datto.com>2022-12-07 10:05:33 -0500
committerPhilipp Heckel <pheckel@datto.com>2022-12-07 10:05:33 -0500
commitc36e80c1179fb755e9775abbbc5a1f866e57e2f5 (patch)
tree8ed0b5c65d941b116ee98751fd5b7d9f8ff75198
parentf327c8ffddbd4ef9e0c4d5b0ac43ee04f4582481 (diff)
downloadponypush-c36e80c1179fb755e9775abbbc5a1f866e57e2f5.tar.gz
ponypush-c36e80c1179fb755e9775abbbc5a1f866e57e2f5.tar.bz2
ponypush-c36e80c1179fb755e9775abbbc5a1f866e57e2f5.zip
Wording, hide for older Android versions
-rw-r--r--app/src/main/java/io/heckel/ntfy/msg/NotificationService.kt12
-rw-r--r--app/src/main/java/io/heckel/ntfy/ui/DetailSettingsActivity.kt6
-rw-r--r--app/src/main/res/values/strings.xml8
3 files changed, 16 insertions, 10 deletions
diff --git a/app/src/main/java/io/heckel/ntfy/msg/NotificationService.kt b/app/src/main/java/io/heckel/ntfy/msg/NotificationService.kt
index b6ac8c1..0c0dede 100644
--- a/app/src/main/java/io/heckel/ntfy/msg/NotificationService.kt
+++ b/app/src/main/java/io/heckel/ntfy/msg/NotificationService.kt
@@ -73,6 +73,10 @@ class NotificationService(val context: Context) {
maybeDeleteNotificationGroup(groupId)
}
+ fun channelsSupported(): Boolean {
+ return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
+ }
+
private fun subscriptionGroupId(subscription: Subscription): String {
return subscription.id.toString()
}
@@ -339,7 +343,7 @@ class NotificationService(val context: Context) {
}
private fun maybeCreateNotificationChannel(group: String, priority: Int) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ if (channelsSupported()) {
// Note: To change a notification channel, you must delete the old one and create a new one!
val channelId = toChannelId(group, priority)
@@ -378,19 +382,19 @@ class NotificationService(val context: Context) {
}
private fun maybeDeleteNotificationChannel(group: String, priority: Int) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ if (channelsSupported()) {
notificationManager.deleteNotificationChannel(toChannelId(group, priority))
}
}
private fun maybeCreateNotificationGroup(id: String, name: String) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ if (channelsSupported()) {
notificationManager.createNotificationChannelGroup(NotificationChannelGroup(id, name))
}
}
private fun maybeDeleteNotificationGroup(id: String) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ if (channelsSupported()) {
notificationManager.deleteNotificationChannelGroup(id)
}
}
diff --git a/app/src/main/java/io/heckel/ntfy/ui/DetailSettingsActivity.kt b/app/src/main/java/io/heckel/ntfy/ui/DetailSettingsActivity.kt
index 06b2927..819b421 100644
--- a/app/src/main/java/io/heckel/ntfy/ui/DetailSettingsActivity.kt
+++ b/app/src/main/java/io/heckel/ntfy/ui/DetailSettingsActivity.kt
@@ -115,13 +115,15 @@ class DetailSettingsActivity : AppCompatActivity() {
private fun loadView() {
if (subscription.upAppId == null) {
loadInstantPref()
- loadDedicatedChannelsPrefs()
- loadOpenChannelsPrefs()
loadMutedUntilPref()
loadMinPriorityPref()
loadAutoDeletePref()
loadIconSetPref()
loadIconRemovePref()
+ if (notificationService.channelsSupported()) {
+ loadDedicatedChannelsPrefs()
+ loadOpenChannelsPrefs()
+ }
} else {
val notificationsHeaderId = context?.getString(R.string.detail_settings_notifications_header_key) ?: return
val notificationsHeader: PreferenceCategory? = findPreference(notificationsHeaderId)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fa054e3..deecdbe 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -350,10 +350,10 @@
<string name="detail_settings_notifications_instant_title">Instant delivery</string>
<string name="detail_settings_notifications_instant_summary_on">Notifications are delivered instantly. Requires a foreground service and consumes more battery.</string>
<string name="detail_settings_notifications_instant_summary_off">Notifications are delivered using Firebase. Delivery may be delayed, but consumes less battery.</string>
- <string name="detail_settings_notifications_dedicated_channels_title">Use dedicated channels</string>
- <string name="detail_settings_notifications_dedicated_channels_summary_on">Use dedicated notification channels for this subscription</string>
- <string name="detail_settings_notifications_dedicated_channels_summary_off">Use default notification channels</string>
- <string name="detail_settings_notifications_open_channels_title">Configure dedicated channels</string>
+ <string name="detail_settings_notifications_dedicated_channels_title">Custom notification settings</string>
+ <string name="detail_settings_notifications_dedicated_channels_summary_on">Using dedicated notification channels for this subscription</string>
+ <string name="detail_settings_notifications_dedicated_channels_summary_off">Using default settings (sounds, Do Not Disturb override, etc.)</string>
+ <string name="detail_settings_notifications_open_channels_title">Configure notification settings</string>
<string name="detail_settings_notifications_open_channels_summary">Do Not Disturb (DND) override, sounds, etc.</string>
<string name="detail_settings_appearance_header">Appearance</string>
<string name="detail_settings_appearance_icon_set_title">Subscription icon</string>