Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Whether you cloned or downloaded the 'zipped' sources you will either find the s
In either case open a terminal pointing to the directory you put the sources in. The local build process is described [here](./docs/how_to_build.md) and the configuration options are described [here](./docs/configuration.md).

> [!NOTE]
> The minimum device requirement for this application is Android API level 28.
> The minimum device requirement for this application is Android API level 29.

### Testing

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ internal fun Project.configureKotlinAndroid(
compileSdk = 35

defaultConfig {
minSdk = 31
minSdk = 29
}

buildFeatures {
Expand Down
24 changes: 12 additions & 12 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
[versions]
accompanist = "0.36.0"
androidDesugarJdkLibs = "2.1.5"
androidGradlePlugin = "8.10.1"
androidGradlePlugin = "8.11.0"
androidxActivity = "1.10.1"
androidxAppCompat = "1.7.0"
androidxAppCompat = "1.7.1"
androidxBrowser = "1.8.0"
androidxComposeBom = "2025.05.01"
androidxComposeBom = "2025.06.01"
androidxComposeRuntimeTracing = "1.8.2"
androidxCore = "1.16.0"
androidxCoreSplashscreen = "1.0.1"
androidxDataStore = "1.1.7"
androidxEspresso = "3.6.1"
androidxLifecycle = "2.9.0"
androidxLifecycle = "2.9.1"
androidxMacroBenchmark = "1.3.4"
androidxMetrics = "1.0.0-beta02"
androidxNavigation = "2.9.0"
Expand All @@ -31,21 +31,21 @@ coil = "3.2.0"
constraintlayoutVersion = "1.1.1"
gmsPlugin = "4.4.2"
junit4 = "4.13.2"
kotlin = "2.1.21"
kotlin = "2.2.0"
kotlinxCoroutines = "1.10.2"
kotlinxDatetime = "0.6.2"
kotlinxSerializationJson = "1.8.0"
ksp = "2.1.21-2.0.1"
ksp = "2.2.0-2.0.2"
lint = "31.10.1"
okhttp = "4.12.0"
protobuf = "3.24.0"
protobufPlugin = "0.9.4"
retrofit = "3.0.0"
robolectric = "4.14.1"
robolectric = "4.15.1"
secrets = "2.0.1"
turbine = "1.2.0"
koin = "4.0.4"
koinAnnotations = "2.0.1-RC1"
turbine = "1.2.1"
koin = "4.1.0"
koinAnnotations = "2.1.0"
material = "1.12.0"
mockito = "5.18.0"
mockitoKotlin = "5.4.0"
Expand All @@ -56,14 +56,14 @@ googlePhoneNumber = "9.0.5"
zxing = "3.5.3"
eudiWalletCore = "0.18.0"
cameraCore = "1.4.2"
owaspDependencyCheck = "12.1.1"
owaspDependencyCheck = "12.1.3"
material3 = "1.3.2"
kover = "0.9.1"
sonar = "6.2.0.5505"
baselineprofile = "1.3.4"
timber = "5.0.1"
treessence = "1.1.2"
rqesUiSDK = "0.2.2"
rqesUiSDK = "0.2.3"
androidxRoom = "2.7.1"

[libraries]
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@
#Sun Sep 17 23:01:33 EEST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
package eu.europa.ec.resourceslogic.theme

import android.app.Activity
import android.os.Build
import androidx.annotation.ChecksSdkIntAtLeast
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.dynamicDarkColorScheme
Expand Down Expand Up @@ -45,6 +47,12 @@ class ThemeManager {
lateinit var set: ThemeSet
private set

/**
* Defines if dynamic theming is supported. Notice that Dynamic color is available on Android 12+.
*/
@ChecksSdkIntAtLeast(api = Build.VERSION_CODES.S)
val dynamicThemeSupported = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S

@Composable
fun Theme(
darkTheme: Boolean = isSystemInDarkTheme(),
Expand All @@ -56,7 +64,7 @@ class ThemeManager {
val darkColorScheme = set.darkColors

val colorScheme = when {
!disableDynamicTheming -> {
!disableDynamicTheming && dynamicThemeSupported -> {
when {
darkTheme -> dynamicDarkColorScheme(LocalContext.current)
else -> dynamicLightColorScheme(LocalContext.current)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import eu.europa.ec.resourceslogic.theme.templates.structures.ThemeFontStyle.Com
import eu.europa.ec.resourceslogic.theme.templates.structures.ThemeFontWeight.Companion.toFontWeight

data class ThemeFont(
@FontRes val res: Int,
@param:FontRes val res: Int,
val weight: ThemeFontWeight,
val style: ThemeFontStyle
) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ import eu.europa.ec.resourceslogic.R
*/
@Stable
data class IconData(
@DrawableRes val resourceId: Int?,
@StringRes val contentDescriptionId: Int,
@param:DrawableRes val resourceId: Int?,
@param:StringRes val contentDescriptionId: Int,
val imageVector: ImageVector? = null,
) {
init {
Expand Down
Loading