fix #16: Increase sound frequencies (#17)

This commit is contained in:
timklge 2025-01-17 16:27:47 +01:00 committed by GitHub
parent 40d13e6574
commit bf930ab375
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 11 deletions

View File

@ -75,7 +75,7 @@ class KarooReminderExtension : KarooExtension("karoo-reminder", "1.1.1") {
private var jobs: MutableSet<Job> = mutableSetOf() private var jobs: MutableSet<Job> = mutableSetOf()
data class DisplayedReminder(val tones: ReminderBeepPattern, val trigger: ReminderTrigger, val alert: InRideAlert) data class DisplayedReminder(val beepPattern: ReminderBeepPattern, val trigger: ReminderTrigger, val alert: InRideAlert)
private var reminderChannel = Channel<DisplayedReminder>(2, BufferOverflow.DROP_OLDEST) private var reminderChannel = Channel<DisplayedReminder>(2, BufferOverflow.DROP_OLDEST)
@ -99,8 +99,8 @@ class KarooReminderExtension : KarooExtension("karoo-reminder", "1.1.1") {
delay(1_000) delay(1_000)
applicationContext.sendBroadcast(intent) applicationContext.sendBroadcast(intent)
if (displayedReminder.tones != ReminderBeepPattern.NO_TONES) { if (displayedReminder.beepPattern != ReminderBeepPattern.NO_TONES) {
karooSystem.dispatch(PlayBeepPattern(displayedReminder.tones.tones)) karooSystem.dispatch(PlayBeepPattern(displayedReminder.beepPattern.tones))
mediaPlayer?.start() mediaPlayer?.start()
} }
karooSystem.dispatch(displayedReminder.alert) karooSystem.dispatch(displayedReminder.alert)

View File

@ -295,15 +295,17 @@ fun DetailScreen(isCreating: Boolean, reminder: Reminder, onSubmit: (updatedRemi
.fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(10.dp)) { .fillMaxWidth(), verticalArrangement = Arrangement.spacedBy(10.dp)) {
ReminderBeepPattern.entries.forEach { pattern -> ReminderBeepPattern.entries.forEach { pattern ->
val tones = pattern.tones
Row(modifier = Modifier Row(modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
.clickable { .clickable {
dialogSelectedTone = pattern dialogSelectedTone = pattern
karooSystem.dispatch(PlayBeepPattern(pattern.tones)) karooSystem.dispatch(PlayBeepPattern(tones))
}, verticalAlignment = Alignment.CenterVertically) { }, verticalAlignment = Alignment.CenterVertically) {
RadioButton(selected = dialogSelectedTone == pattern, onClick = { RadioButton(selected = dialogSelectedTone == pattern, onClick = {
dialogSelectedTone = pattern dialogSelectedTone = pattern
karooSystem.dispatch(PlayBeepPattern(pattern.tones)) karooSystem.dispatch(PlayBeepPattern(tones))
}) })
Text( Text(
text = pattern.displayName, text = pattern.displayName,

View File

@ -12,16 +12,16 @@ import kotlinx.serialization.json.Json
@Serializable @Serializable
enum class ReminderBeepPattern(val displayName: String, val tones: List<PlayBeepPattern.Tone>) { enum class ReminderBeepPattern(val displayName: String, val tones: List<PlayBeepPattern.Tone>) {
NO_TONES("No tones", emptyList()), NO_TONES("No tones", emptyList()),
THREE_TONES_UP("Three tones up", listOf(PlayBeepPattern.Tone(500, 200), PlayBeepPattern.Tone(700, 200), PlayBeepPattern.Tone(900, 200))), THREE_TONES_UP("Three tones up", listOf(PlayBeepPattern.Tone(2_000, 200), PlayBeepPattern.Tone(2_500, 200), PlayBeepPattern.Tone(3_000, 200))),
THREE_TONES_DOWN("Three tones down", listOf(PlayBeepPattern.Tone(900, 200), PlayBeepPattern.Tone(700, 200), PlayBeepPattern.Tone(400, 200))), THREE_TONES_DOWN("Three tones down", listOf(PlayBeepPattern.Tone(3_000, 200), PlayBeepPattern.Tone(2_500, 200), PlayBeepPattern.Tone(2_000, 200))),
DOUBLE_HIGH("Double high", listOf( DOUBLE_HIGH("Double high", listOf(
PlayBeepPattern.Tone(400, 400), PlayBeepPattern.Tone(2_200, 400),
PlayBeepPattern.Tone(0, 200), PlayBeepPattern.Tone(0, 200),
PlayBeepPattern.Tone(600, 200), PlayBeepPattern.Tone(2_800, 200),
PlayBeepPattern.Tone(0, 200), PlayBeepPattern.Tone(0, 200),
PlayBeepPattern.Tone(600, 200), PlayBeepPattern.Tone(2_800, 200),
PlayBeepPattern.Tone(0, 200), PlayBeepPattern.Tone(0, 200),
PlayBeepPattern.Tone(400, 400)) PlayBeepPattern.Tone(2_200, 400))
) )
} }