fix: Don't play alarm sound when skip button is clicked
This commit is contained in:
@@ -395,7 +395,7 @@ fun TimerScreen(
|
|||||||
customItem(
|
customItem(
|
||||||
{
|
{
|
||||||
FilledTonalIconButton(
|
FilledTonalIconButton(
|
||||||
onClick = { onAction(TimerAction.SkipTimer) },
|
onClick = { onAction(TimerAction.SkipTimer(fromButton = true)) },
|
||||||
colors = IconButtonDefaults.filledTonalIconButtonColors(
|
colors = IconButtonDefaults.filledTonalIconButtonColors(
|
||||||
containerColor = colorContainer
|
containerColor = colorContainer
|
||||||
),
|
),
|
||||||
@@ -422,7 +422,7 @@ fun TimerScreen(
|
|||||||
},
|
},
|
||||||
text = { Text("Skip to next") },
|
text = { Text("Skip to next") },
|
||||||
onClick = {
|
onClick = {
|
||||||
onAction(TimerAction.SkipTimer)
|
onAction(TimerAction.SkipTimer(fromButton = true))
|
||||||
state.dismiss()
|
state.dismiss()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -8,8 +8,9 @@
|
|||||||
package org.nsh07.pomodoro.ui.timerScreen.viewModel
|
package org.nsh07.pomodoro.ui.timerScreen.viewModel
|
||||||
|
|
||||||
sealed interface TimerAction {
|
sealed interface TimerAction {
|
||||||
|
data class SkipTimer(val fromButton: Boolean) : TimerAction
|
||||||
|
|
||||||
data object ResetTimer : TimerAction
|
data object ResetTimer : TimerAction
|
||||||
data object SkipTimer : TimerAction
|
|
||||||
data object StopAlarm : TimerAction
|
data object StopAlarm : TimerAction
|
||||||
data object ToggleTimer : TimerAction
|
data object ToggleTimer : TimerAction
|
||||||
}
|
}
|
||||||
@@ -134,8 +134,9 @@ class TimerViewModel(
|
|||||||
|
|
||||||
fun onAction(action: TimerAction) {
|
fun onAction(action: TimerAction) {
|
||||||
when (action) {
|
when (action) {
|
||||||
|
is TimerAction.SkipTimer -> skipTimer(action.fromButton)
|
||||||
|
|
||||||
TimerAction.ResetTimer -> resetTimer()
|
TimerAction.ResetTimer -> resetTimer()
|
||||||
TimerAction.SkipTimer -> skipTimer()
|
|
||||||
TimerAction.StopAlarm -> stopAlarm()
|
TimerAction.StopAlarm -> stopAlarm()
|
||||||
TimerAction.ToggleTimer -> toggleTimer()
|
TimerAction.ToggleTimer -> toggleTimer()
|
||||||
}
|
}
|
||||||
@@ -164,10 +165,10 @@ class TimerViewModel(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun skipTimer() {
|
private fun skipTimer(fromButton: Boolean = false) {
|
||||||
viewModelScope.launch {
|
viewModelScope.launch {
|
||||||
saveTimeToDb()
|
saveTimeToDb()
|
||||||
showTimerNotification(0, paused = true, complete = true)
|
showTimerNotification(0, paused = true, complete = !fromButton)
|
||||||
startTime = 0L
|
startTime = 0L
|
||||||
pauseTime = 0L
|
pauseTime = 0L
|
||||||
pauseDuration = 0L
|
pauseDuration = 0L
|
||||||
|
|||||||
Reference in New Issue
Block a user