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

Commit 18cd311f authored by Harini Rajan's avatar Harini Rajan Committed by Android (Google) Code Review
Browse files

Merge "Modify components to fit go/wear-passkey-3p-app-sign-in" into main

parents 30c4962d 27645413
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -30,20 +30,20 @@ import com.google.android.horologist.compose.tools.WearPreview

@Composable
fun AccountRow(
    name: String,
    email: String,
    primaryText: String,
    secondaryText: String,
    modifier: Modifier = Modifier,
) {
    Column(modifier = modifier, horizontalAlignment = Alignment.CenterHorizontally) {
        Text(
            text = name,
            text = primaryText,
            color = Color(0xFFE6FF7B),
            overflow = TextOverflow.Ellipsis,
            maxLines = 1,
            style = MaterialTheme.typography.title2
        )
        Text(
            text = email,
            text = secondaryText,
            modifier = Modifier.padding(top = 7.dp),
            color = Color(0xFFCAC5BC),
            overflow = TextOverflow.Ellipsis,
@@ -57,7 +57,7 @@ fun AccountRow(
@Composable
fun AccountRowPreview() {
    AccountRow(
        name = "Elisa Beckett",
        email = "beckett_bakery@gmail.com",
        primaryText = "Elisa Beckett",
        secondaryText = "beckett_bakery@gmail.com",
    )
}
+19 −40
Original line number Diff line number Diff line
@@ -16,45 +16,24 @@

package com.android.credentialmanager.ui.components

import androidx.annotation.DrawableRes
import android.graphics.drawable.Drawable
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.unit.dp
import androidx.wear.compose.material.MaterialTheme
import androidx.core.graphics.drawable.toBitmap
import androidx.wear.compose.material.Text
import com.android.credentialmanager.R
import com.google.android.horologist.annotations.ExperimentalHorologistApi
import com.google.android.horologist.compose.material.Icon
import com.google.android.horologist.compose.material.util.DECORATIVE_ELEMENT_CONTENT_DESCRIPTION
import com.google.android.horologist.compose.tools.WearPreview
import androidx.compose.material3.Icon
import androidx.wear.compose.material.MaterialTheme as WearMaterialTheme
import androidx.compose.ui.text.style.TextAlign

@OptIn(ExperimentalHorologistApi::class)
@Composable
fun SignInHeader(
    @DrawableRes icon: Int,
    title: String,
    modifier: Modifier = Modifier,
) {
    SignInHeader(
        iconContent = {
            Icon(
                id = icon,
                contentDescription = DECORATIVE_ELEMENT_CONTENT_DESCRIPTION
            )
        },
        title = title,
        modifier = modifier,
    )
}

@Composable
fun SignInHeader(
    iconContent: @Composable ColumnScope.() -> Unit,
    icon: Drawable?,
    title: String,
    modifier: Modifier = Modifier,
) {
@@ -62,22 +41,22 @@ fun SignInHeader(
        modifier = modifier,
        horizontalAlignment = Alignment.CenterHorizontally
    ) {
        iconContent()
        if (icon != null) {
            Icon(
                bitmap = icon.toBitmap().asImageBitmap(),
                modifier = Modifier.size(32.dp),
                // Decorative purpose only.
                contentDescription = null
            )
        }

        Text(
            text = title,
            textAlign = TextAlign.Center,
            modifier = Modifier
                .padding(top = 6.dp)
                .padding(horizontal = 10.dp),
            style = MaterialTheme.typography.title3
            style = WearMaterialTheme.typography.title3
        )
    }
}

@WearPreview
@Composable
fun SignInHeaderPreview() {
    SignInHeader(
        icon = R.drawable.passkey_icon,
        title = stringResource(R.string.use_passkey_title)
    )
}
+4 −3
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import com.android.credentialmanager.ui.screens.single.SingleAccountScreen
import com.google.android.horologist.annotations.ExperimentalHorologistApi
import com.google.android.horologist.compose.layout.ScalingLazyColumnState

@OptIn(ExperimentalHorologistApi::class)
@Composable
fun SinglePasskeyScreen(
    name: String,
@@ -40,14 +41,14 @@ fun SinglePasskeyScreen(
    SingleAccountScreen(
        headerContent = {
            SignInHeader(
                icon = R.drawable.passkey_icon,
                icon = null,
                title = stringResource(R.string.use_passkey_title),
            )
        },
        accountContent = {
            AccountRow(
                name = name,
                email = email,
                primaryText = name,
                secondaryText = email,
                modifier = Modifier.padding(top = 10.dp),
            )
        },
+1 −1
Original line number Diff line number Diff line
@@ -103,7 +103,7 @@ fun SinglePasswordScreen(
    SingleAccountScreen(
        headerContent = {
            SignInHeader(
                icon = R.drawable.passkey_icon,
                icon = null,
                title = stringResource(R.string.use_password_title),
            )
        },