Add scrim, outlineVariant and surfaceTint color to custom color schemes

This commit is contained in:
MM20
2022-10-15 12:42:47 +02:00
parent 0b152a2fa5
commit c47a880d72
8 changed files with 67 additions and 11 deletions
@@ -22,7 +22,7 @@ internal val Context.dataStore: LauncherDataStore by dataStore(
}
)
internal const val SchemaVersion = 10
internal const val SchemaVersion = 11
internal fun getMigrations(context: Context): List<DataMigration<Settings>> {
return listOf(
@@ -36,5 +36,6 @@ internal fun getMigrations(context: Context): List<DataMigration<Settings>> {
Migration_7_8(),
Migration_8_9(),
Migration_9_10(),
Migration_10_11(),
)
}
@@ -205,9 +205,9 @@ internal val DefaultLightCustomColorScheme: Settings.AppearanceSettings.CustomCo
.setInverseOnSurface(scheme.inverseOnSurface)
.setInversePrimary(scheme.inversePrimary)
.setOutline(scheme.outline)
//TODO: handle outline variant and scrim properly
.setScrim(Color.BLACK)
.setOutlineVariant(scheme.surfaceVariant)
.setScrim(scheme.scrim)
.setOutlineVariant(scheme.outlineVariant)
.setSurfaceTint(scheme.primary)
.build()
}
@@ -241,8 +241,8 @@ internal val DefaultDarkCustomColorScheme: Settings.AppearanceSettings.CustomCol
.setInverseOnSurface(scheme.inverseOnSurface)
.setInversePrimary(scheme.inversePrimary)
.setOutline(scheme.outline)
//TODO: handle outline variant and scrim properly
.setScrim(Color.BLACK)
.setOutlineVariant(scheme.surfaceVariant)
.setScrim(scheme.scrim)
.setOutlineVariant(scheme.outlineVariant)
.setSurfaceTint(scheme.primary)
.build()
}
@@ -0,0 +1,22 @@
package de.mm20.launcher2.preferences.migrations
import de.mm20.launcher2.preferences.Settings
class Migration_10_11: VersionedMigration(10, 11) {
override suspend fun applyMigrations(builder: Settings.Builder): Settings.Builder {
return builder.setAppearance(
builder.appearance.toBuilder()
.setCustomColors(
builder.appearance.customColors.toBuilder()
.setLightScheme(
builder.appearance.customColors.lightScheme.toBuilder()
.setSurfaceTint(builder.appearance.customColors.lightScheme.primary)
)
.setDarkScheme(
builder.appearance.customColors.darkScheme.toBuilder()
.setSurfaceTint(builder.appearance.customColors.darkScheme.primary)
)
)
)
}
}
@@ -60,6 +60,7 @@ message Settings {
uint32 on_error_container = 26;
uint32 outline_variant = 27;
uint32 scrim = 28;
uint32 surface_tint = 29;
}
Scheme light_scheme = 3;
Scheme dark_scheme = 4;