-
public class VolumeViewModel extends ViewModel
ViewModel for a Volume Control Screen.
Holds the state of both Volume (volumeState) and AudioOutput (audioOutput).
Volume changes can be made via increaseVolume and decreaseVolume.
See AudioManager.setStreamVolume See AudioManager.STREAM_MUSIC
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classVolumeViewModel.Companion
-
Field Summary
Fields Modifier and Type Field Description private final StateFlow<VolumeState>volumeStateprivate final StateFlow<AudioOutput>audioOutputprivate final VolumeScrollableStatevolumeScrollableState
-
Constructor Summary
Constructors Constructor Description VolumeViewModel(VolumeRepository volumeRepository, AudioOutputRepository audioOutputRepository, Function0<Unit> onCleared, Vibrator vibrator)
-
Method Summary
Modifier and Type Method Description final StateFlow<VolumeState>getVolumeState()final StateFlow<AudioOutput>getAudioOutput()final VolumeScrollableStategetVolumeScrollableState()final UnitincreaseVolume()final UnitdecreaseVolume()final UnitlaunchOutputSelection()-
-
Method Detail
-
getVolumeState
final StateFlow<VolumeState> getVolumeState()
-
getAudioOutput
final StateFlow<AudioOutput> getAudioOutput()
-
getVolumeScrollableState
final VolumeScrollableState getVolumeScrollableState()
-
increaseVolume
final Unit increaseVolume()
-
decreaseVolume
final Unit decreaseVolume()
-
launchOutputSelection
final Unit launchOutputSelection()
-
-
-
-