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

Commit 8faf871b authored by Joy Babafemi's avatar Joy Babafemi Committed by Android (Google) Code Review
Browse files

Merge "Revert inline suggestions style to default IME style" into main

parents 8b368dbf 18a29a62
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import android.credentials.CredentialOption
import android.credentials.selection.Entry
import android.credentials.selection.GetCredentialProviderData
import android.credentials.selection.ProviderData
import android.graphics.BlendMode
import android.graphics.drawable.Icon
import android.os.Bundle
import android.os.CancellationSignal
@@ -353,6 +354,7 @@ class CredentialAutofillService : AutofillService() {
        val sliceBuilder = InlineSuggestionUi
                .newContentBuilder(pendingIntent)
                .setTitle(displayName)
        icon.setTintBlendMode(BlendMode.DST)
        sliceBuilder.setStartIcon(icon)
        if (primaryEntry.credentialType ==
                CredentialType.PASSKEY && duplicateDisplayNameForPasskeys[displayName] == true) {
+4 −47
Original line number Diff line number Diff line
@@ -21,63 +21,20 @@ package com.android.credentialmanager.common.ui
import android.content.Context
import android.util.Size
import android.widget.inline.InlinePresentationSpec
import androidx.autofill.inline.common.TextViewStyle
import androidx.autofill.inline.common.ViewStyle
import androidx.autofill.inline.UiVersions
import androidx.autofill.inline.UiVersions.Style
import androidx.autofill.inline.v1.InlineSuggestionUi
import androidx.core.content.ContextCompat
import android.util.TypedValue
import android.graphics.Typeface


class InlinePresentationsFactory {
    companion object {
        private const val googleSansMediumFontFamily = "google-sans-medium"
        private const val googleSansTextFontFamily = "google-sans-text"
        // There is no min width required for now but this is needed for the spec builder
        private const val minInlineWidth = 5000
        // There is no max width required for now but this is needed for the spec builder
        private const val maxInlineWidth = 5000


        fun modifyInlinePresentationSpec(context: Context,
                                         originalSpec: InlinePresentationSpec): InlinePresentationSpec {
            return InlinePresentationSpec.Builder(Size(originalSpec.minSize.width, originalSpec
                    .minSize.height),
                    Size(minInlineWidth, originalSpec
                    Size(maxInlineWidth, originalSpec
                            .maxSize.height))
                    .setStyle(UiVersions.newStylesBuilder().addStyle(getStyle(context)).build())
                    .build()
        }


        fun getStyle(context: Context): Style {
            val textColorPrimary = ContextCompat.getColor(context,
                    com.android.credentialmanager.R.color.text_primary)
            val textColorSecondary = ContextCompat.getColor(context,
                    com.android.credentialmanager.R.color.text_secondary)
            val textColorBackground = ContextCompat.getColor(context,
                    com.android.credentialmanager.R.color.inline_background)
            val chipHorizontalPadding = context.resources.getDimensionPixelSize(com.android
                    .credentialmanager.R.dimen.horizontal_chip_padding)
            val chipVerticalPadding = context.resources.getDimensionPixelSize(com.android
                    .credentialmanager.R.dimen.vertical_chip_padding)
            return InlineSuggestionUi.newStyleBuilder()
                    .setChipStyle(
                            ViewStyle.Builder().setPadding(chipHorizontalPadding,
                                    chipVerticalPadding,
                                    chipHorizontalPadding, chipVerticalPadding).build()
                    )
                    .setTitleStyle(
                            TextViewStyle.Builder().setTextColor(textColorPrimary).setTextSize
                            (TypedValue.COMPLEX_UNIT_DIP, 14F)
                                    .setTypeface(googleSansMediumFontFamily,
                                            Typeface.NORMAL).setBackgroundColor(textColorBackground)
                                    .build()
                    )
                    .setSubtitleStyle(TextViewStyle.Builder().setTextColor(textColorSecondary)
                            .setTextSize(TypedValue.COMPLEX_UNIT_DIP, 12F).setTypeface
                            (googleSansTextFontFamily, Typeface.NORMAL).setBackgroundColor
                            (textColorBackground).build())
                    .setStyle(originalSpec.getStyle())
                    .build()
        }
    }