Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3216f9ea authored by Haijie Hong's avatar Haijie Hong
Browse files

Add UiEvent for new VolumePanel

Bug: 322279959
Flag: aconfig new_volume_panel TRUNKFOOD
Test: atest BottomBarViewModelTest
Test: atest CaptioningViewModelTest
Test: atest MediaOutputAvailabilityCriteriaTest
Test: atest MediaOutputViewModelTest
Change-Id: Ib6523364d70f7b77e4f9f51f3e8e857815f92a8f
parent 89dd306e
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -28,11 +28,13 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.slice.Slice
import com.android.internal.logging.UiEventLogger
import com.android.systemui.animation.Expandable
import com.android.systemui.res.R
import com.android.systemui.statusbar.phone.SystemUIDialog
import com.android.systemui.volume.panel.component.anc.ui.viewmodel.AncViewModel
import com.android.systemui.volume.panel.component.popup.ui.composable.VolumePanelPopup
import com.android.systemui.volume.panel.ui.VolumePanelUiEvent
import javax.inject.Inject

/** ANC popup up displaying ANC control [Slice]. */
@@ -41,10 +43,12 @@ class AncPopup
constructor(
    private val volumePanelPopup: VolumePanelPopup,
    private val viewModel: AncViewModel,
    private val uiEventLogger: UiEventLogger,
) {

    /** Shows a popup with the [expandable] animation. */
    fun show(expandable: Expandable?) {
        uiEventLogger.log(VolumePanelUiEvent.VOLUME_PANEL_ANC_POPUP_SHOWN)
        volumePanelPopup.show(expandable, { Title() }, { Content(it) })
    }

+9 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import com.android.internal.logging.UiEventLogger
import com.android.systemui.animation.Expandable
import com.android.systemui.common.ui.compose.Icon
import com.android.systemui.common.ui.compose.toColor
@@ -34,6 +35,7 @@ import com.android.systemui.statusbar.phone.SystemUIDialog
import com.android.systemui.volume.panel.component.popup.ui.composable.VolumePanelPopup
import com.android.systemui.volume.panel.component.selector.ui.composable.VolumePanelRadioButtonBar
import com.android.systemui.volume.panel.component.spatial.ui.viewmodel.SpatialAudioViewModel
import com.android.systemui.volume.panel.ui.VolumePanelUiEvent
import javax.inject.Inject

class SpatialAudioPopup
@@ -41,10 +43,17 @@ class SpatialAudioPopup
constructor(
    private val viewModel: SpatialAudioViewModel,
    private val volumePanelPopup: VolumePanelPopup,
    private val uiEventLogger: UiEventLogger,
) {

    /** Shows a popup with the [expandable] animation. */
    fun show(expandable: Expandable) {
        uiEventLogger.logWithPosition(
            VolumePanelUiEvent.VOLUME_PANEL_SPATIAL_AUDIO_POP_UP_SHOWN,
            0,
            null,
            viewModel.spatialAudioButtons.value.indexOfFirst { it.button.isChecked }
        )
        volumePanelPopup.show(expandable, { Title() }, { Content(it) })
    }

+2 −0
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@ fun ColumnVolumeSliders(
                onValueChange = { newValue: Float ->
                    sliderViewModel.onValueChanged(sliderState, newValue)
                },
                onValueChangeFinished = { sliderViewModel.onValueChangeFinished() },
                onIconTapped = { sliderViewModel.toggleMuted(sliderState) },
                sliderColors = sliderColors,
            )
@@ -131,6 +132,7 @@ fun ColumnVolumeSliders(
                                onValueChange = { newValue: Float ->
                                    sliderViewModel.onValueChanged(sliderState, newValue)
                                },
                                onValueChangeFinished = { sliderViewModel.onValueChangeFinished() },
                                onIconTapped = { sliderViewModel.toggleMuted(sliderState) },
                                sliderColors = sliderColors,
                            )
+1 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ fun GridVolumeSliders(
                onValueChange = { newValue: Float ->
                    sliderViewModel.onValueChanged(sliderState, newValue)
                },
                onValueChangeFinished = { sliderViewModel.onValueChangeFinished() },
                onIconTapped = { sliderViewModel.toggleMuted(sliderState) },
                sliderColors = sliderColors,
            )
+2 −0
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ import com.android.systemui.volume.panel.component.volume.slider.ui.viewmodel.Sl
fun VolumeSlider(
    state: SliderState,
    onValueChange: (newValue: Float) -> Unit,
    onValueChangeFinished: (() -> Unit)? = null,
    onIconTapped: () -> Unit,
    modifier: Modifier = Modifier,
    sliderColors: PlatformSliderColors,
@@ -85,6 +86,7 @@ fun VolumeSlider(
        value = value,
        valueRange = state.valueRange,
        onValueChange = onValueChange,
        onValueChangeFinished = onValueChangeFinished,
        enabled = state.isEnabled,
        icon = {
            state.icon?.let {
Loading