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

Commit 2912c455 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add ringer horizontal background for landscape" into main

parents 1bdf6166 dcc69d10
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -33,15 +33,25 @@
        app:layout_constraintStart_toStartOf="@id/volume_dialog_main_slider_container"
        app:layout_constraintTop_toTopOf="@id/volume_ringer_drawer" />

    <View
        android:id="@+id/volume_ringer_horizontal_background"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:background="@drawable/volume_dialog_background"
        app:layout_constraintBottom_toTopOf="@id/volume_dialog_main_slider_container"
        app:layout_constraintEnd_toEndOf="@id/volume_ringer_drawer"
        app:layout_constraintStart_toStartOf="@id/volume_ringer_drawer"
        app:layout_constraintTop_toTopOf="@id/volume_dialog_background" />

    <include
        android:id="@id/volume_ringer_drawer"
        layout="@layout/volume_ringer_drawer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="@dimen/volume_dialog_components_spacing"
        android:layout_marginRight="@dimen/volume_dialog_ringer_drawer_diff_right_margin"
        app:layout_constraintBottom_toTopOf="@id/volume_dialog_main_slider_container"
        app:layout_constraintEnd_toEndOf="@id/volume_dialog_main_slider_container"
        app:layout_constraintStart_toStartOf="@id/volume_dialog_main_slider_container"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="1" />

+2 −0
Original line number Diff line number Diff line
@@ -2116,6 +2116,8 @@

    <dimen name="volume_dialog_background_square_corner_radius">12dp</dimen>

    <dimen name="volume_dialog_ringer_drawer_left_margin">10dp</dimen>
    <dimen name="volume_dialog_ringer_drawer_diff_right_margin">6dp</dimen>
    <dimen name="volume_dialog_ringer_drawer_button_size">@dimen/volume_dialog_button_size</dimen>
    <dimen name="volume_dialog_ringer_drawer_button_icon_radius">10dp</dimen>
    <dimen name="volume_dialog_ringer_selected_button_background_radius">20dp</dimen>
+13 −0
Original line number Diff line number Diff line
@@ -71,6 +71,8 @@ constructor(private val viewModel: VolumeDialogRingerDrawerViewModel) {

    fun CoroutineScope.bind(view: View) {
        val volumeDialogBackgroundView = view.requireViewById<View>(R.id.volume_dialog_background)
        val ringerHBackgroundView =
            view.requireViewById<View>(R.id.volume_ringer_horizontal_background)
        val drawerContainer = view.requireViewById<MotionLayout>(R.id.volume_ringer_drawer)
        val unselectedButtonUiModel = RingerButtonUiModel.getUnselectedButton(view.context)
        val selectedButtonUiModel = RingerButtonUiModel.getSelectedButton(view.context)
@@ -84,6 +86,11 @@ constructor(private val viewModel: VolumeDialogRingerDrawerViewModel) {
            )
        var backgroundAnimationProgress: Float by
            Delegates.observable(0F) { _, _, progress ->
                ringerHBackgroundView.applyCorners(
                    fullRadius = volumeDialogBgFullRadius,
                    diff = volumeDialogBgFullRadius - volumeDialogBgSmallRadius,
                    progress,
                )
                volumeDialogBackgroundView.applyCorners(
                    fullRadius = volumeDialogBgFullRadius,
                    diff = volumeDialogBgFullRadius - volumeDialogBgSmallRadius,
@@ -95,6 +102,7 @@ constructor(private val viewModel: VolumeDialogRingerDrawerViewModel) {
        }
        drawerContainer.setTransitionListener(ringerDrawerTransitionListener)
        volumeDialogBackgroundView.background = volumeDialogBackgroundView.background.mutate()
        ringerHBackgroundView.background = ringerHBackgroundView.background.mutate()

        viewModel.ringerViewModel
            .mapLatest { ringerState ->
@@ -184,6 +192,8 @@ constructor(private val viewModel: VolumeDialogRingerDrawerViewModel) {
                                )
                                volumeDialogBackgroundView.background =
                                    volumeDialogBackgroundView.background.mutate()
                                ringerHBackgroundView.background =
                                    ringerHBackgroundView.background.mutate()
                            }
                        }
                    }
@@ -193,6 +203,9 @@ constructor(private val viewModel: VolumeDialogRingerDrawerViewModel) {
                        volumeDialogBackgroundView.setBackgroundResource(
                            R.drawable.volume_dialog_background
                        )
                        ringerHBackgroundView.setBackgroundResource(
                            R.drawable.volume_dialog_background
                        )
                    }
                }
            }
+12 −0
Original line number Diff line number Diff line
@@ -119,6 +119,15 @@ private fun ConstraintSet.adjustOpenConstraintsForDrawer(
        )
        when (lastOrientation) {
            ORIENTATION_LANDSCAPE -> {
                if (index == 0) {
                    setMargin(
                        button.id,
                        ConstraintSet.LEFT,
                        motionLayout.context.resources.getDimensionPixelSize(
                            R.dimen.volume_dialog_ringer_drawer_left_margin
                        ),
                    )
                }
                setButtonPositionLandscapeConstraints(motionLayout, index, button)
                if (index != motionLayout.childCount - 1) {
                    setMargin(
@@ -134,6 +143,9 @@ private fun ConstraintSet.adjustOpenConstraintsForDrawer(
                setMargin(button.id, ConstraintSet.BOTTOM, 0)
            }
            ORIENTATION_PORTRAIT -> {
                if (index == 0) {
                    setMargin(button.id, ConstraintSet.LEFT, 0)
                }
                setButtonPositionPortraitConstraints(motionLayout, index, button)
                if (index != motionLayout.childCount - 1) {
                    setMargin(