1- package com.firebase.ui.auth.compose
1+ package com.firebase.ui.auth.compose.ui.components
22
33import androidx.compose.foundation.Image
44import androidx.compose.material3.Icon
55import androidx.compose.foundation.layout.Arrangement
66import androidx.compose.foundation.layout.Column
7+ import androidx.compose.foundation.layout.PaddingValues
78import androidx.compose.foundation.layout.Row
89import androidx.compose.foundation.layout.Spacer
910import androidx.compose.foundation.layout.fillMaxSize
11+ import androidx.compose.foundation.layout.fillMaxWidth
1012import androidx.compose.foundation.layout.width
1113import androidx.compose.foundation.shape.RoundedCornerShape
1214import androidx.compose.material.icons.Icons
@@ -19,12 +21,14 @@ import androidx.compose.ui.Alignment
1921import androidx.compose.ui.Modifier
2022import androidx.compose.ui.graphics.Color
2123import androidx.compose.ui.platform.LocalContext
24+ import androidx.compose.ui.text.style.TextAlign
25+ import androidx.compose.ui.text.style.TextOverflow
2226import androidx.compose.ui.tooling.preview.Preview
2327import androidx.compose.ui.unit.dp
2428import com.firebase.ui.auth.compose.configuration.AuthProvider
2529import com.firebase.ui.auth.compose.configuration.Provider
26- import com.firebase.ui.auth.compose.configuration.stringprovider .AuthUIStringProvider
27- import com.firebase.ui.auth.compose.configuration.stringprovider .DefaultAuthUIStringProvider
30+ import com.firebase.ui.auth.compose.configuration.string_provider .AuthUIStringProvider
31+ import com.firebase.ui.auth.compose.configuration.string_provider .DefaultAuthUIStringProvider
2832import com.firebase.ui.auth.compose.configuration.theme.AuthUIAsset
2933import com.firebase.ui.auth.compose.configuration.theme.AuthUITheme
3034
@@ -63,10 +67,11 @@ fun AuthProviderButton(
6367 stringProvider : AuthUIStringProvider ,
6468) {
6569 val providerStyle = resolveProviderStyle(provider, style)
66- val providerText = resolveProviderLabel(provider, stringProvider)
70+ val providerLabel = resolveProviderLabel(provider, stringProvider)
6771
6872 Button (
6973 modifier = modifier,
74+ contentPadding = PaddingValues (horizontal = 12 .dp),
7075 colors = ButtonDefaults .buttonColors(
7176 containerColor = providerStyle.backgroundColor,
7277 contentColor = providerStyle.contentColor,
@@ -79,27 +84,31 @@ fun AuthProviderButton(
7984 enabled = enabled,
8085 ) {
8186 Row (
82- verticalAlignment = Alignment .CenterVertically
87+ modifier = modifier,
88+ verticalAlignment = Alignment .CenterVertically ,
89+ horizontalArrangement = Arrangement .Start
8390 ) {
8491 val providerIcon = providerStyle.icon
8592 if (providerIcon != null ) {
8693 val iconTint = providerStyle.iconTint
8794 if (iconTint != null ) {
8895 Icon (
8996 painter = providerIcon.painter,
90- contentDescription = providerText ,
97+ contentDescription = providerLabel ,
9198 tint = iconTint
9299 )
93100 } else {
94101 Image (
95102 painter = providerIcon.painter,
96- contentDescription = providerText
103+ contentDescription = providerLabel
97104 )
98105 }
99- Spacer (modifier = Modifier .width(8 .dp))
106+ Spacer (modifier = Modifier .width(12 .dp))
100107 }
101108 Text (
102- text = providerText
109+ text = providerLabel,
110+ overflow = TextOverflow .Ellipsis ,
111+ maxLines = 1 ,
103112 )
104113 }
105114 }
0 commit comments