From f12dc56ff8691dcd768694e80bebd0bb367f35f9 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 18 Jul 2023 11:53:46 +0200 Subject: [PATCH] Create Huge logo size --- .../atomic/atoms/ElementLogoAtom.kt | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/ElementLogoAtom.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/ElementLogoAtom.kt index 9b1ac26f2c..a76aabc5ad 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/ElementLogoAtom.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/ElementLogoAtom.kt @@ -57,7 +57,7 @@ fun ElementLogoAtom( ) { val blur = if (darkTheme) 160.dp else 24.dp //box-shadow: 0px 6.075949668884277px 24.30379867553711px 0px #1B1D2280; - val shadowColor = if (darkTheme) Color.Black.copy(alpha = 0.4f) else Color(0x401B1D22) + val shadowColor = if (darkTheme) size.shadowColorDark else size.shadowColorLight val backgroundColor = if (darkTheme) Color.White.copy(alpha = 0.2f) else Color.White.copy(alpha = 0.4f) val borderColor = if (darkTheme) Color.White.copy(alpha = 0.8f) else Color.White.copy(alpha = 0.4f) Box( @@ -72,7 +72,7 @@ fun ElementLogoAtom( .shapeShadow( color = shadowColor, cornerRadius = size.cornerRadius, - blurRadius = 32.dp, + blurRadius = size.shadowRadius, offsetY = 8.dp, ) ) @@ -96,12 +96,18 @@ sealed class ElementLogoAtomSize( val logoSize: Dp, val cornerRadius: Dp, val borderWidth: Dp, + val shadowColorDark: Color, + val shadowColorLight: Color, + val shadowRadius: Dp, ) { object Medium : ElementLogoAtomSize( outerSize = 120.dp, logoSize = 83.5.dp, cornerRadius = 33.dp, borderWidth = 0.38.dp, + shadowColorDark = Color.Black.copy(alpha = 0.4f), + shadowColorLight = Color(0x401B1D22), + shadowRadius = 32.dp, ) object Large : ElementLogoAtomSize( @@ -109,6 +115,19 @@ sealed class ElementLogoAtomSize( logoSize = 110.dp, cornerRadius = 44.dp, borderWidth = 1.dp, + shadowColorDark = Color.Black.copy(alpha = 0.4f), + shadowColorLight = Color(0x401B1D22), + shadowRadius = 32.dp, + ) + + object Huge : ElementLogoAtomSize( + outerSize = 158.dp, + logoSize = 110.dp, + cornerRadius = 44.dp, + borderWidth = 0.5.dp, + shadowColorDark = Color.Black, + shadowColorLight = Color(0x801B1D22), + shadowRadius = 60.dp, ) } @@ -162,12 +181,18 @@ internal fun ElementLogoAtomLargePreview() { ContentToPreview(ElementLogoAtomSize.Large) } +@Composable +@DayNightPreviews +internal fun ElementLogoAtomHugePreview() { + ContentToPreview(ElementLogoAtomSize.Huge) +} + @Composable private fun ContentToPreview(elementLogoAtomSize: ElementLogoAtomSize) { ElementPreview { Box( Modifier - .size(elementLogoAtomSize.outerSize + 64.dp) + .size(elementLogoAtomSize.outerSize + elementLogoAtomSize.shadowRadius * 2) .background(ElementTheme.colors.bgSubtlePrimary), contentAlignment = Alignment.Center ) {