Use Mdc Compose Theme adapter

This commit is contained in:
MM20 2021-12-12 13:59:28 +01:00
parent c4a2efaef3
commit 0abb198fdd
No known key found for this signature in database
GPG Key ID: 0B61A8F2DEAFA389
12 changed files with 22 additions and 90 deletions

View File

@ -92,7 +92,7 @@ dependencies {
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.exifinterface) implementation(libs.androidx.exifinterface)
implementation(libs.androidx.media2) implementation(libs.androidx.media2)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
implementation(libs.androidx.constraintlayout) implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.gridlayout) implementation(libs.androidx.gridlayout)

View File

@ -39,7 +39,7 @@ dependencies {
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
implementation(libs.androidx.palette) implementation(libs.androidx.palette)

View File

@ -38,5 +38,5 @@ dependencies {
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
} }

View File

@ -37,7 +37,7 @@ android {
dependencies { dependencies {
implementation(libs.kotlin.stdlib) implementation(libs.kotlin.stdlib)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
implementation(libs.androidx.recyclerview) implementation(libs.androidx.recyclerview)

View File

@ -39,7 +39,6 @@ dependencies {
implementation(libs.bundles.kotlin) implementation(libs.bundles.kotlin)
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents)
implementation(libs.androidx.work) implementation(libs.androidx.work)
implementation(libs.okhttp) implementation(libs.okhttp)

View File

@ -39,7 +39,6 @@ dependencies {
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.androidx.palette) implementation(libs.androidx.palette)
implementation(libs.materialcomponents)
implementation(libs.bundles.androidx.lifecycle) implementation(libs.bundles.androidx.lifecycle)

View File

@ -42,7 +42,7 @@ dependencies {
implementation(libs.bundles.kotlin) implementation(libs.bundles.kotlin)
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
implementation(libs.androidx.browser) implementation(libs.androidx.browser)
implementation(libs.androidx.constraintlayout) implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.securitycrypto) implementation(libs.androidx.securitycrypto)

View File

@ -42,7 +42,7 @@ dependencies {
implementation(libs.bundles.kotlin) implementation(libs.bundles.kotlin)
implementation(libs.androidx.core) implementation(libs.androidx.core)
implementation(libs.androidx.appcompat) implementation(libs.androidx.appcompat)
implementation(libs.materialcomponents) implementation(libs.materialcomponents.core)
implementation(libs.androidx.browser) implementation(libs.androidx.browser)
implementation(libs.androidx.constraintlayout) implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.securitycrypto) implementation(libs.androidx.securitycrypto)

View File

@ -252,9 +252,15 @@ dependencyResolutionManagement {
.to("androidx.navigation", "navigation-compose") .to("androidx.navigation", "navigation-compose")
.version("2.4.0-alpha10") .version("2.4.0-alpha10")
alias("materialcomponents") alias("materialcomponents.core")
.to("com.google.android.material", "material") .to("com.google.android.material", "material")
.version("1.5.0-beta01") .version("1.5.0-beta01")
alias("materialcomponents.composethemeadapter3")
.to("com.google.android.material", "compose-theme-adapter-3")
.version("1.0.1")
alias("materialcomponents.composethemeadapter")
.to("com.google.android.material", "compose-theme-adapter")
.version("1.1.1")
version("lottie", "4.1.0") version("lottie", "4.1.0")
alias("lottie.core") alias("lottie.core")

View File

@ -66,7 +66,11 @@ dependencies {
// Legacy dependencies // Legacy dependencies
implementation(libs.androidx.transition) implementation(libs.androidx.transition)
implementation(libs.materialcomponents)
implementation(libs.materialcomponents.core)
implementation(libs.materialcomponents.composethemeadapter)
implementation(libs.materialcomponents.composethemeadapter3)
implementation(libs.viewpropertyobjectanimator) implementation(libs.viewpropertyobjectanimator)
implementation(libs.glide) implementation(libs.glide)
implementation(libs.draglinearlayout) implementation(libs.draglinearlayout)

View File

@ -14,6 +14,8 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import com.google.android.material.composethemeadapter.MdcTheme
import com.google.android.material.composethemeadapter3.Mdc3Theme
import androidx.compose.material.MaterialTheme as Material2Theme import androidx.compose.material.MaterialTheme as Material2Theme
val legacyTypography = Typography( val legacyTypography = Typography(
@ -82,84 +84,8 @@ val legacyTypography = Typography(
@Composable @Composable
fun LegacyLauncherTheme(content: @Composable () -> Unit) { fun LegacyLauncherTheme(content: @Composable () -> Unit) {
val theme = LocalContext.current.theme
val colorSurface = TypedValue() Mdc3Theme {
theme.resolveAttribute(R.attr.colorSurface, colorSurface, true) MdcTheme(content = content)
val colorSurfaceVariant = TypedValue()
theme.resolveAttribute(R.attr.colorSurfaceVariant, colorSurfaceVariant, true)
val colorPrimary = TypedValue()
theme.resolveAttribute(R.attr.colorPrimary, colorPrimary, true)
val colorOnPrimary = TypedValue()
theme.resolveAttribute(R.attr.colorOnPrimary, colorOnPrimary, true)
val colorPrimaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorPrimaryContainer, colorPrimaryContainer, true)
val colorOnPrimaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorOnPrimaryContainer, colorOnPrimaryContainer, true)
val colorSecondary = TypedValue()
theme.resolveAttribute(R.attr.colorSecondary, colorSecondary, true)
val colorOnSecondary = TypedValue()
theme.resolveAttribute(R.attr.colorOnSecondary, colorOnSecondary, true)
val colorSecondaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorSecondaryContainer, colorSecondaryContainer, true)
val colorOnSecondaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorOnSecondaryContainer, colorOnSecondaryContainer, true)
val colorTertiary = TypedValue()
theme.resolveAttribute(R.attr.colorTertiary, colorTertiary, true)
val colorOnTertiary = TypedValue()
theme.resolveAttribute(R.attr.colorOnTertiary, colorOnTertiary, true)
val colorTertiaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorTertiaryContainer, colorTertiaryContainer, true)
val colorOnTertiaryContainer = TypedValue()
theme.resolveAttribute(R.attr.colorOnTertiaryContainer, colorOnTertiaryContainer, true)
MaterialTheme(
typography = legacyTypography,
colorScheme = if (isSystemInDarkTheme()) darkColorScheme(
surface = Color(colorSurface.data),
surfaceVariant = Color(colorSurfaceVariant.data),
primary = Color(colorPrimary.data),
onPrimary = Color(colorOnPrimary.data),
primaryContainer = Color(colorPrimaryContainer.data),
onPrimaryContainer = Color(colorOnPrimaryContainer.data),
secondary = Color(colorSecondary.data),
onSecondary = Color(colorOnSecondary.data),
secondaryContainer = Color(colorSecondaryContainer.data),
onSecondaryContainer = Color(colorOnSecondaryContainer.data),
tertiary = Color(colorTertiary.data),
onTertiary = Color(colorOnTertiary.data),
tertiaryContainer = Color(colorTertiaryContainer.data),
onTertiaryContainer = Color(colorOnTertiaryContainer.data),
) else lightColorScheme(
surface = Color(colorSurface.data),
surfaceVariant = Color(colorSurfaceVariant.data),
primary = Color(colorPrimary.data),
onPrimary = Color(colorOnPrimary.data),
primaryContainer = Color(colorPrimaryContainer.data),
onPrimaryContainer = Color(colorOnPrimaryContainer.data),
secondary = Color(colorSecondary.data),
onSecondary = Color(colorOnSecondary.data),
secondaryContainer = Color(colorSecondaryContainer.data),
onSecondaryContainer = Color(colorOnSecondaryContainer.data),
tertiary = Color(colorTertiary.data),
onTertiary = Color(colorOnTertiary.data),
tertiaryContainer = Color(colorTertiaryContainer.data),
onTertiaryContainer = Color(colorOnTertiaryContainer.data),
)
) {
Material2Theme(
colors = if (isSystemInDarkTheme()) darkColors(
surface = Color(colorSurface.data),
primary = Color(colorPrimary.data),
) else lightColors(
surface = Color(colorSurface.data),
primary = Color(colorPrimary.data),
),
content = content
)
} }
} }

View File

@ -43,8 +43,6 @@ dependencies {
implementation(libs.bundles.androidx.lifecycle) implementation(libs.bundles.androidx.lifecycle)
implementation(libs.materialcomponents)
implementation(libs.koin.android) implementation(libs.koin.android)
implementation(project(":weather")) implementation(project(":weather"))