Merge pull request #56 from qamarelsafadi/fix/session-length-slider-issue
Fix: Session length slider issue in SettingsScreen.
This commit is contained in:
@@ -35,7 +35,7 @@ import org.nsh07.pomodoro.data.TimerRepository
|
|||||||
@OptIn(FlowPreview::class, ExperimentalMaterial3Api::class)
|
@OptIn(FlowPreview::class, ExperimentalMaterial3Api::class)
|
||||||
class SettingsViewModel(
|
class SettingsViewModel(
|
||||||
private val preferenceRepository: AppPreferenceRepository,
|
private val preferenceRepository: AppPreferenceRepository,
|
||||||
private val timerRepository: TimerRepository
|
private val timerRepository: TimerRepository,
|
||||||
) : ViewModel() {
|
) : ViewModel() {
|
||||||
private val _preferencesState = MutableStateFlow(PreferencesState())
|
private val _preferencesState = MutableStateFlow(PreferencesState())
|
||||||
val preferencesState = _preferencesState.asStateFlow()
|
val preferencesState = _preferencesState.asStateFlow()
|
||||||
@@ -50,12 +50,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()
|
||||||
|
|
||||||
@@ -203,9 +205,9 @@ class SettingsViewModel(
|
|||||||
|
|
||||||
SettingsViewModel(
|
SettingsViewModel(
|
||||||
preferenceRepository = appPreferenceRepository,
|
preferenceRepository = appPreferenceRepository,
|
||||||
timerRepository = appTimerRepository
|
timerRepository = appTimerRepository,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user