Repo created

This commit is contained in:
Fr4nz D13trich 2025-11-22 13:56:56 +01:00
parent 75dc487a7a
commit 39c29d175b
6317 changed files with 388324 additions and 2 deletions

View file

@ -0,0 +1,7 @@
plugins {
id(ThunderbirdPlugins.Library.kmpCompose)
}
android {
namespace = "net.thunderbird.core.ui.theme.api"
}

View file

@ -0,0 +1,19 @@
package net.thunderbird.core.ui.theme.api
import androidx.compose.runtime.Composable
/**
* Provides the compose theme for a feature.
*/
interface FeatureThemeProvider {
@Composable
fun WithTheme(
content: @Composable () -> Unit,
)
@Composable
fun WithTheme(
darkTheme: Boolean,
content: @Composable () -> Unit,
)
}

View file

@ -0,0 +1,6 @@
package net.thunderbird.core.ui.theme.api
enum class Theme {
LIGHT,
DARK,
}

View file

@ -0,0 +1,25 @@
package net.thunderbird.core.ui.theme.api
import androidx.annotation.StyleRes
interface ThemeManager {
val appTheme: Theme
val messageViewTheme: Theme
val messageComposeTheme: Theme
@get:StyleRes
val appThemeResourceId: Int
@get:StyleRes
val messageViewThemeResourceId: Int
@get:StyleRes
val messageComposeThemeResourceId: Int
@get:StyleRes
val dialogThemeResourceId: Int
@get:StyleRes
val translucentDialogThemeResourceId: Int
}

View file

@ -0,0 +1,20 @@
package net.thunderbird.core.ui.theme.api
import androidx.annotation.StyleRes
interface ThemeProvider {
@get:StyleRes
val appThemeResourceId: Int
@get:StyleRes
val appLightThemeResourceId: Int
@get:StyleRes
val appDarkThemeResourceId: Int
@get:StyleRes
val dialogThemeResourceId: Int
@get:StyleRes
val translucentDialogThemeResourceId: Int
}