From 3de2f3bfbe327e5583676878377798ab1c20550e Mon Sep 17 00:00:00 2001 From: Pavel Shishkin Date: Tue, 12 Mar 2024 22:07:47 +0100 Subject: [PATCH 1/2] update compose compiler version to 1.5.10.1 (#4474) Fixes https://github.com/JetBrains/compose-multiplatform/issues/4455 --- compose/integrations/composable-test-cases/gradle.properties | 2 +- .../org/jetbrains/compose/ComposeCompilerCompatibility.kt | 2 +- gradle-plugins/gradle.properties | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/compose/integrations/composable-test-cases/gradle.properties b/compose/integrations/composable-test-cases/gradle.properties index 531a1c89ce..b6c54f9897 100644 --- a/compose/integrations/composable-test-cases/gradle.properties +++ b/compose/integrations/composable-test-cases/gradle.properties @@ -9,7 +9,7 @@ kotlinx.coroutines.version=1.8.0-RC #empty by default - a default version will be used #compose.kotlinCompilerPluginVersion=23.12.18 -compose.kotlinCompilerPluginVersion=1.5.10 +compose.kotlinCompilerPluginVersion=1.5.10.1 # default|failingJs - see enum class CasesToRun tests.casesToRun=default diff --git a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/ComposeCompilerCompatibility.kt b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/ComposeCompilerCompatibility.kt index ff591cf2da..c5affef067 100644 --- a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/ComposeCompilerCompatibility.kt +++ b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/ComposeCompilerCompatibility.kt @@ -23,7 +23,7 @@ internal object ComposeCompilerCompatibility { "1.9.20" to "1.5.3", "1.9.21" to "1.5.4", "1.9.22" to "1.5.8.1", - "1.9.23" to "1.5.10", + "1.9.23" to "1.5.10.1", "2.0.0-Beta1" to "1.5.4-dev1-kt2.0.0-Beta1", "2.0.0-Beta4" to "1.5.9-kt-2.0.0-Beta4", ) diff --git a/gradle-plugins/gradle.properties b/gradle-plugins/gradle.properties index da89afff0a..e67e21faef 100644 --- a/gradle-plugins/gradle.properties +++ b/gradle-plugins/gradle.properties @@ -10,7 +10,7 @@ dev.junit.parallel=false # Default version of Compose Libraries used by Gradle plugin compose.version=1.6.0-dev1383 # The latest version of Compose Compiler used by Gradle plugin. Used only in tests/CI. -compose.tests.compiler.version=1.5.10 +compose.tests.compiler.version=1.5.10.1 # The latest version of Kotlin compatible with compose.tests.compiler.version. Used only in tests/CI. compose.tests.compiler.compatible.kotlin.version=1.9.23 # The latest version of Kotlin compatible with compose.tests.compiler.version for JS target. Used only on CI. From e8459e19b41f06ad80e76c25c46fbe5853c4e38e Mon Sep 17 00:00:00 2001 From: Konstantin Date: Tue, 12 Mar 2024 15:07:24 +0100 Subject: [PATCH 2/2] [resources] Fix regionCode crash on iOS before 17 (#4473) The regionCode API ``` NSLocale.currentLocale().regionCode ``` was published in iOS 17: https://developer.apple.com/documentation/foundation/nslocale/4172868-regioncode?language=objc to make it works on all iOS versions we have to use: ``` NSLocale.currentLocale().objectForKey(NSLocaleCountryCode) as? String ``` fixes https://github.com/JetBrains/compose-multiplatform/issues/4469 --- .../jetbrains/compose/resources/ResourceEnvironment.ios.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/components/resources/library/src/iosMain/kotlin/org/jetbrains/compose/resources/ResourceEnvironment.ios.kt b/components/resources/library/src/iosMain/kotlin/org/jetbrains/compose/resources/ResourceEnvironment.ios.kt index b941d0ff10..6fd9d908e9 100644 --- a/components/resources/library/src/iosMain/kotlin/org/jetbrains/compose/resources/ResourceEnvironment.ios.kt +++ b/components/resources/library/src/iosMain/kotlin/org/jetbrains/compose/resources/ResourceEnvironment.ios.kt @@ -8,14 +8,16 @@ import platform.UIKit.UIUserInterfaceStyle internal actual fun getSystemEnvironment(): ResourceEnvironment { val locale = NSLocale.currentLocale() + val languageCode = locale.languageCode + val regionCode = locale.objectForKey(NSLocaleCountryCode) as? String val mainScreen = UIScreen.mainScreen val isDarkTheme = mainScreen.traitCollection().userInterfaceStyle == UIUserInterfaceStyle.UIUserInterfaceStyleDark //there is no an API to get a physical screen size and calculate a real DPI val density = mainScreen.scale.toFloat() return ResourceEnvironment( - language = LanguageQualifier(locale.languageCode), - region = RegionQualifier(locale.regionCode.orEmpty()), + language = LanguageQualifier(languageCode), + region = RegionQualifier(regionCode.orEmpty()), theme = ThemeQualifier.selectByValue(isDarkTheme), density = DensityQualifier.selectByDensity(density) )