Add intent to import theme files directly

This commit is contained in:
MM20
2023-10-02 19:46:45 +02:00
parent e516848f4f
commit e83a6e8a31
7 changed files with 462 additions and 4 deletions
@@ -1,6 +1,7 @@
package de.mm20.launcher2.themes
import kotlinx.serialization.KSerializer
import kotlinx.serialization.SerializationException
import kotlinx.serialization.descriptors.PrimitiveKind
import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor
import kotlinx.serialization.descriptors.SerialDescriptor
@@ -53,5 +54,9 @@ fun Theme.toJson(): String {
}
fun Theme.Companion.fromJson(json: String): Theme {
return ThemeJson.decodeFromString(json)
return try {
ThemeJson.decodeFromString(json)
} catch (e: SerializationException) {
throw IllegalArgumentException(e)
}
}