From 0bf0a80090002b60c8532ce14b81561277f3bfa7 Mon Sep 17 00:00:00 2001 From: murjune Date: Mon, 22 Jan 2024 23:23:56 +0900 Subject: [PATCH 1/5] [feat] GradientColors --- .../src/main/java/com/moya/funch/theme/Gradient.kt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 core/designsystem/src/main/java/com/moya/funch/theme/Gradient.kt diff --git a/core/designsystem/src/main/java/com/moya/funch/theme/Gradient.kt b/core/designsystem/src/main/java/com/moya/funch/theme/Gradient.kt new file mode 100644 index 00000000..aed59a1b --- /dev/null +++ b/core/designsystem/src/main/java/com/moya/funch/theme/Gradient.kt @@ -0,0 +1,14 @@ +package com.moya.funch.theme + +import androidx.compose.runtime.Immutable +import androidx.compose.runtime.staticCompositionLocalOf +import androidx.compose.ui.graphics.Color + +@Immutable +data class GradientColors( + val top: Color = Color.Unspecified, + val bottom: Color = Color.Unspecified, + val container: Color = Color.Unspecified, +) + +val LocalGradientColors = staticCompositionLocalOf { GradientColors() } From c4a01f079cb48a0e77f8b25f4c526fae11d33d60 Mon Sep 17 00:00:00 2001 From: murjune Date: Mon, 22 Jan 2024 23:24:23 +0900 Subject: [PATCH 2/5] [feat] BackGroundTheme --- .../main/java/com/moya/funch/theme/Background.kt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 core/designsystem/src/main/java/com/moya/funch/theme/Background.kt diff --git a/core/designsystem/src/main/java/com/moya/funch/theme/Background.kt b/core/designsystem/src/main/java/com/moya/funch/theme/Background.kt new file mode 100644 index 00000000..245b19f9 --- /dev/null +++ b/core/designsystem/src/main/java/com/moya/funch/theme/Background.kt @@ -0,0 +1,14 @@ +package com.moya.funch.theme + +import androidx.compose.runtime.Immutable +import androidx.compose.runtime.staticCompositionLocalOf +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.Dp + +@Immutable +data class BackgroundTheme( + val color: Color = Color.Unspecified, + val tonalElevation: Dp = Dp.Unspecified, +) + +val LocalBackgroundTheme = staticCompositionLocalOf { BackgroundTheme() } From 1383661cc24f3467e714492f9ae73b8f5a0eed54 Mon Sep 17 00:00:00 2001 From: murjune Date: Mon, 22 Jan 2024 23:24:41 +0900 Subject: [PATCH 3/5] =?UTF-8?q?[chore]=20internal=20=EC=A7=80=EC=8B=9C?= =?UTF-8?q?=EC=9E=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/designsystem/src/main/java/com/moya/funch/theme/Type.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/core/designsystem/src/main/java/com/moya/funch/theme/Type.kt b/core/designsystem/src/main/java/com/moya/funch/theme/Type.kt index cbf66563..3a172bb9 100644 --- a/core/designsystem/src/main/java/com/moya/funch/theme/Type.kt +++ b/core/designsystem/src/main/java/com/moya/funch/theme/Type.kt @@ -28,8 +28,7 @@ private val spoqaHanSansNeo = FontFamily( R.font.spoqa_han_sans_neo_regular, FontWeight.Normal, FontStyle.Normal - ) - + ), ) @Stable @@ -80,7 +79,7 @@ class FunchTypography internal constructor( } } -fun funchTypography(): FunchTypography { +internal fun funchTypography(): FunchTypography { return FunchTypography( t1 = TextStyle( fontFamily = spoqaHanSansNeo, From 289b57753ac529f5d9fc957152e85f9df5d64574 Mon Sep 17 00:00:00 2001 From: murjune Date: Mon, 22 Jan 2024 23:25:01 +0900 Subject: [PATCH 4/5] [feat] apply BackgroundTheme, GradientColors --- .../src/main/java/com/moya/funch/theme/Theme.kt | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt b/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt index b32eb0f0..20ddf468 100644 --- a/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt +++ b/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt @@ -13,6 +13,11 @@ private val LocalFunchTypography = staticCompositionLocalOf { error("No FunchTypography provided") } +private val DarkGradientColors = + GradientColors(top = Gray900, bottom = Gray900) + +private val DarkAndroidBackgroundTheme = BackgroundTheme(color = Gray900) + object FunchTheme { val colors: FunchColorSchema @Composable get() = LocalFunchColors.current val typography: FunchTypography @Composable get() = LocalFunchTypography.current @@ -39,9 +44,17 @@ fun FunchTheme( ) { // this version provides only dark theme val colors = funchDarkColorSchema() + val gradientColors = DarkGradientColors val typography = funchTypography() - ProvidePophoryColorAndTypography(colors, typography) { - MaterialTheme(content = content) + val backgroundTheme = DarkAndroidBackgroundTheme + + CompositionLocalProvider( + LocalGradientColors provides gradientColors, + LocalBackgroundTheme provides backgroundTheme, + ) { + ProvidePophoryColorAndTypography(colors, typography) { + MaterialTheme(content = content) + } } } From 197e59ea0ce9172d2e8dc8865e2fbb2e76633135 Mon Sep 17 00:00:00 2001 From: murjune Date: Tue, 23 Jan 2024 02:57:13 +0900 Subject: [PATCH 5/5] [chore] designsystem Preview --- .../main/java/com/moya/funch/theme/Theme.kt | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt b/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt index 20ddf468..d4b5f395 100644 --- a/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt +++ b/core/designsystem/src/main/java/com/moya/funch/theme/Theme.kt @@ -1,10 +1,14 @@ package com.moya.funch.theme +import androidx.compose.foundation.layout.Column import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Surface +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.remember import androidx.compose.runtime.staticCompositionLocalOf +import androidx.compose.ui.tooling.preview.Preview private val LocalFunchColors = staticCompositionLocalOf { error("No FunchColors provided") @@ -58,3 +62,29 @@ fun FunchTheme( } } +// TODO : 추후 삭제 +@Preview("FunchTheme 예시") +@Composable +private fun NiaThemePreview() { + FunchTheme { + val color = LocalBackgroundTheme.current.color + Surface( + color = color + ) { + Column { + Text( + text = "Hello, Funch!", + color = FunchTheme.colors.white, + style = FunchTheme.typography.t1 + ) + Text( + text = "Hello, Funch!", + color = FunchTheme.colors.white, + style = FunchTheme.typography.sbt1 + ) + } + + } + + } +}