Skip to content

Commit cc47538

Browse files
committed
fix dropdown for ios and ktor serialization plugin
1 parent 2c199a5 commit cc47538

4 files changed

Lines changed: 15 additions & 7 deletions

File tree

gradle/libs.versions.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ ktor-client-okhttp-v230 = { module = "io.ktor:ktor-client-okhttp", version.ref =
5858
ktor-client-serialization-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" }
5959

6060
coil-compose = { module = "io.coil-kt:coil-compose", version.ref = "coil" }
61-
ktor-serialization-kotlinx-json-v230 = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktorSerializationKotlinxJson" }
6261
mpfilepicker = { module = "com.darkrockstudios:mpfilepicker", version.ref = "mpfilepicker" }
6362
multiplatform-settings-coroutines = { module = "com.russhwolf:multiplatform-settings-coroutines", version.ref = "multiplatformSettingsNoArg" }
6463
multiplatform-settings-no-arg = { module = "com.russhwolf:multiplatform-settings-no-arg", version.ref = "multiplatformSettingsNoArg" }

shared/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import org.jetbrains.compose.compose
33
plugins {
44
kotlin("multiplatform")
55
kotlin("native.cocoapods")
6-
kotlin("plugin.serialization").version("1.8.20")
6+
alias(libs.plugins.kotlinx.serialization)
77
id("com.android.library")
88
id("org.jetbrains.compose")
99
id("kotlin-parcelize")
@@ -62,7 +62,7 @@ kotlin {
6262
implementation(libs.decompose.compose.multiplatform)
6363
implementation(libs.ktor.client.core.v230)
6464
implementation(libs.ktor.client.content.negotiation.v230)
65-
implementation(libs.ktor.serialization.kotlinx.json.v230)
65+
implementation(libs.ktor.client.serialization.json)
6666
implementation(libs.ktor.client.logging)
6767
implementation(libs.napier)
6868
implementation(libs.multiplatform.settings.no.arg)

shared/src/desktopMain/kotlin/com/jettaskboard/multiplatform/util/dropdown/DropDownMenu.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ actual fun JDropdownMenu(
1313
content: @Composable () -> Unit
1414
) {
1515
// Not needed for desktop
16+
// todo - implementation
17+
// Not available in Desktop yet: https://stackoverflow.com/questions/71897962/in-compose-multiplatform-dropdownmenu-is-not-available-in-commonmain
1618
}
1719

1820
@Composable

shared/src/iosMain/kotlin/com/jettaskboard/multiplatform/util/dropdown/DropDownMenu.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.jettaskboard.multiplatform.util.dropdown
22

3+
import androidx.compose.material.DropdownMenu
4+
import androidx.compose.material.DropdownMenuItem
35
import androidx.compose.runtime.Composable
46
import androidx.compose.ui.Modifier
57
import androidx.compose.ui.unit.DpOffset
@@ -12,8 +14,12 @@ actual fun JDropdownMenu(
1214
offset: DpOffset,
1315
content: @Composable () -> Unit
1416
) {
15-
// todo - implementation
16-
// Not available in IOS yet: https://stackoverflow.com/questions/71897962/in-compose-multiplatform-dropdownmenu-is-not-available-in-commonmain
17+
DropdownMenu(
18+
expanded = expanded,
19+
onDismissRequest = onDismissRequest
20+
) {
21+
content()
22+
}
1723
}
1824

1925
@Composable
@@ -22,6 +28,7 @@ actual fun JDropdownMenuItem(
2228
onSelect: () -> Unit,
2329
content: @Composable () -> Unit
2430
) {
25-
// todo - implementation
26-
// // Not available in IOS yet
31+
DropdownMenuItem(onClick = onSelect) {
32+
content()
33+
}
2734
}

0 commit comments

Comments
 (0)