fix: update the fix to take the sessionLength when sessionsSliderState being called.
This commit is contained in:
@@ -52,12 +52,14 @@ class SettingsViewModel(
|
||||
TextFieldState((timerRepository.longBreakTime / 60000).toString())
|
||||
}
|
||||
|
||||
val sessionsSliderState = SliderState(
|
||||
value = timerRepository.sessionLength.toFloat(),
|
||||
steps = 4,
|
||||
valueRange = 1f..6f,
|
||||
onValueChangeFinished = ::updateSessionLength
|
||||
)
|
||||
val sessionsSliderState by lazy {
|
||||
SliderState(
|
||||
value = timerRepository.sessionLength.toFloat(),
|
||||
steps = 4,
|
||||
valueRange = 1f..6f,
|
||||
onValueChangeFinished = ::updateSessionLength
|
||||
)
|
||||
}
|
||||
|
||||
val currentAlarmSound = timerRepository.alarmSoundUri.toString()
|
||||
|
||||
@@ -81,11 +83,6 @@ class SettingsViewModel(
|
||||
val blackTheme = preferenceRepository.getBooleanPreference("black_theme")
|
||||
?: preferenceRepository.saveBooleanPreference("black_theme", false)
|
||||
|
||||
// Load session length from preferences and update slider
|
||||
val sessionLength = preferenceRepository.getIntPreference("session_length")
|
||||
?: timerRepository.sessionLength
|
||||
sessionsSliderState.value = sessionLength.toFloat()
|
||||
|
||||
_preferencesState.update { currentState ->
|
||||
currentState.copy(
|
||||
theme = theme,
|
||||
@@ -94,7 +91,6 @@ class SettingsViewModel(
|
||||
)
|
||||
}
|
||||
}
|
||||
observeCurrentFocusCount()
|
||||
}
|
||||
|
||||
private fun updateSessionLength() {
|
||||
@@ -202,14 +198,6 @@ class SettingsViewModel(
|
||||
}
|
||||
}
|
||||
|
||||
private fun observeCurrentFocusCount() {
|
||||
viewModelScope.launch {
|
||||
_timerState.collect {
|
||||
sessionsSliderState.value = it.currentFocusCount.toFloat()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
val Factory: ViewModelProvider.Factory = viewModelFactory {
|
||||
initializer {
|
||||
|
||||
Reference in New Issue
Block a user