fix: update the fix to take the sessionLength when sessionsSliderState being called.

This commit is contained in:
qamarelsafadi
2025-10-02 22:38:02 +03:00
parent bfec4ec0d6
commit 91cab4a062

View File

@@ -52,12 +52,14 @@ class SettingsViewModel(
TextFieldState((timerRepository.longBreakTime / 60000).toString()) TextFieldState((timerRepository.longBreakTime / 60000).toString())
} }
val sessionsSliderState = SliderState( val sessionsSliderState by lazy {
value = timerRepository.sessionLength.toFloat(), SliderState(
steps = 4, value = timerRepository.sessionLength.toFloat(),
valueRange = 1f..6f, steps = 4,
onValueChangeFinished = ::updateSessionLength valueRange = 1f..6f,
) onValueChangeFinished = ::updateSessionLength
)
}
val currentAlarmSound = timerRepository.alarmSoundUri.toString() val currentAlarmSound = timerRepository.alarmSoundUri.toString()
@@ -81,11 +83,6 @@ class SettingsViewModel(
val blackTheme = preferenceRepository.getBooleanPreference("black_theme") val blackTheme = preferenceRepository.getBooleanPreference("black_theme")
?: preferenceRepository.saveBooleanPreference("black_theme", false) ?: 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 -> _preferencesState.update { currentState ->
currentState.copy( currentState.copy(
theme = theme, theme = theme,
@@ -94,7 +91,6 @@ class SettingsViewModel(
) )
} }
} }
observeCurrentFocusCount()
} }
private fun updateSessionLength() { private fun updateSessionLength() {
@@ -202,14 +198,6 @@ class SettingsViewModel(
} }
} }
private fun observeCurrentFocusCount() {
viewModelScope.launch {
_timerState.collect {
sessionsSliderState.value = it.currentFocusCount.toFloat()
}
}
}
companion object { companion object {
val Factory: ViewModelProvider.Factory = viewModelFactory { val Factory: ViewModelProvider.Factory = viewModelFactory {
initializer { initializer {