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

Commit 6a6b94e5 authored by Danny Burakov's avatar Danny Burakov Committed by Android (Google) Code Review
Browse files

Merge "Fix paddings around SecurityInfo and QS Overlay" into main

parents 67b8b2ff 61ed3514
Loading
Loading
Loading
Loading
+12 −15
Original line number Diff line number Diff line
@@ -282,13 +282,15 @@ private fun ContentScope.QuickSettingsLayout(
            ),
    ) {
        if (isFullWidthShade()) {
            VerticalSeparator()
            VerticalSeparator(QuickSettingsShade.Dimensions.ShortPadding)
            QuickSettingsOverlayHeader(
                viewModel = qsContainerViewModel.shadeHeaderViewModel,
                modifier = Modifier.element(QuickSettingsShade.Elements.Header),
            )

            VerticalSeparator()
            VerticalSeparator(QuickSettingsShade.Dimensions.ShortPadding)
        } else {
            VerticalSeparator(QuickSettingsShade.Dimensions.Padding)
        }

        val toolbarViewModel =
@@ -300,8 +302,7 @@ private fun ContentScope.QuickSettingsLayout(
            viewModel = toolbarViewModel,
        )

        // TODO(b/428805936): Double check this padding.
        VerticalSeparator()
        VerticalSeparator(QuickSettingsShade.Dimensions.ShortPadding)

        Column(modifier = Modifier.fillMaxWidth().verticalScroll(rememberScrollState())) {
            Media(
@@ -313,7 +314,7 @@ private fun ContentScope.QuickSettingsLayout(
            )

            if (qsContainerViewModel.showMedia) {
                VerticalSeparator()
                VerticalSeparator(QuickSettingsShade.Dimensions.Padding)
            }

            Box(
@@ -332,11 +333,10 @@ private fun ContentScope.QuickSettingsLayout(
                )
            }

            VerticalSeparator()

            if (volumeSliderViewModel != null) {
                val volumeSliderState by volumeSliderViewModel.slider.collectAsStateWithLifecycle()

                VerticalSeparator(QuickSettingsShade.Dimensions.Padding)
                Box(
                    Modifier.systemGestureExclusionInShade(
                        enabled = { layoutState.transitionState is TransitionState.Idle }
@@ -381,29 +381,24 @@ private fun ContentScope.QuickSettingsLayout(
                        }
                    }
                }

                VerticalSeparator()
            }

            GridAnchor()

            // TODO(b/428805936): Double check this padding.
            VerticalSeparator(QuickSettingsShade.Dimensions.Padding)

            GridAnchor()
            TileGrid(
                viewModel = qsContainerViewModel.tileGridViewModel,
                modifier = Modifier.fillMaxWidth(),
                enableRevealEffect = TileRevealFlag.isEnabled,
            )

            // TODO(b/428805936): Double check this padding.
            VerticalSeparator(QuickSettingsShade.Dimensions.Padding * 2)
            VerticalSeparator(QuickSettingsShade.Dimensions.Padding)
        }
    }
}

@Composable
private fun VerticalSeparator(height: Dp = QuickSettingsShade.Dimensions.Padding) {
private fun VerticalSeparator(height: Dp) {
    Spacer(Modifier.height(height = height))
}

@@ -415,6 +410,8 @@ object QuickSettingsShade {
    }

    object Dimensions {
        // This is used around the header and toolbar
        val ShortPadding = 8.dp
        val Padding = 16.dp
        val ToolbarHeight = 48.dp
    }
+1 −3
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.systemui.qs.panels.ui.compose.toolbar

import androidx.compose.foundation.basicMarquee
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.CornerSize
@@ -66,7 +65,6 @@ fun SecurityInfo(
                rememberExpandableController(color = Color.Transparent, shape = CircleShape),
            modifier =
                modifier
                    .padding(horizontal = 4.dp)
                    .borderOnFocus(color = MaterialTheme.colorScheme.secondary, CornerSize(0))
                    .semantics {
                        if (onClick != null) {
@@ -91,7 +89,7 @@ fun SecurityInfo(
                        text = viewModel.text,
                        maxLines = 1,
                        style = MaterialTheme.typography.labelLarge,
                        color = MaterialTheme.colorScheme.primary,
                        color = MaterialTheme.colorScheme.onSurface,
                        modifier = Modifier.basicMarquee(iterations = 1, initialDelayMillis = 1000),
                    )
                }
+18 −7
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import androidx.compose.animation.AnimatedContentScope
import androidx.compose.animation.ExperimentalSharedTransitionApi
import androidx.compose.animation.SharedTransitionLayout
import androidx.compose.animation.SharedTransitionScope
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.size
@@ -39,6 +40,7 @@ import androidx.compose.ui.res.painterResource
import androidx.compose.ui.unit.dp
import androidx.core.graphics.drawable.toBitmap
import com.android.compose.animation.Expandable
import com.android.compose.theme.LocalAndroidColorScheme
import com.android.systemui.common.shared.model.Icon
import com.android.systemui.common.ui.compose.load
import com.android.systemui.compose.modifiers.sysuiResTag
@@ -61,12 +63,7 @@ fun Toolbar(viewModel: ToolbarViewModel, modifier: Modifier = Modifier) {
        SharedTransitionLayout(modifier = Modifier.weight(1f)) {
            AnimatedContent(
                targetState = securityInfoCollapsed,
                contentAlignment =
                    if (securityInfoCollapsed) {
                        Alignment.CenterStart
                    } else {
                        Alignment.Center
                    },
                contentAlignment = Alignment.CenterStart,
                label = "Toolbar.CollapsedSecurityInfo",
            ) { securityInfoCollapsed ->
                if (securityInfoCollapsed) {
@@ -105,6 +102,7 @@ private fun SharedTransitionScope.StandardToolbarLayout(
            model = viewModel.userSwitcherViewModel,
            Modifier.sysuiResTag("multi_user_switch").minimumInteractiveComponentSize(),
            iconColor = Color.Unspecified,
            useIconColorProtection = true,
        )

        // Edit mode button
@@ -145,6 +143,7 @@ private fun IconButton(
    model: FooterActionsButtonViewModel?,
    modifier: Modifier = Modifier,
    iconColor: Color = MaterialTheme.colorScheme.onSurface,
    useIconColorProtection: Boolean = false,
) {
    if (model == null) {
        return
@@ -156,10 +155,22 @@ private fun IconButton(
        modifier =
            modifier.borderOnFocus(MaterialTheme.colorScheme.secondary, CornerSize(percent = 50)),
        useModifierBasedImplementation = true,
    ) {
        val protectionColor =
            if (useIconColorProtection) {
                LocalAndroidColorScheme.current.surfaceEffect1
            } else {
                Color.Transparent
            }
        Box(
            modifier =
                Modifier.size(36.dp).background(color = protectionColor, shape = CircleShape),
            contentAlignment = Alignment.Center,
        ) {
            ToolbarIcon(icon = model.icon, modifier = Modifier.size(24.dp), tint = iconColor)
        }
    }
}

// TODO(b/394738023): Use com.android.systemui.common.ui.compose.Icon instead.
@Composable