Skip to content

Commit f19b272

Browse files
committed
fix editable labels could not obtain focus on edit, UI was laggy while loading multiple text fields, and the latency of loading many text fields was significant and inconsistent
1 parent 4b6c1d4 commit f19b272

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ kotlin {
9494
implementation("org.bouncycastle:bcpkix-jdk18on:1.79")
9595

9696
// text field
97-
api("io.github.sunny-chung:bigtext-ui-composable:2.0.10")
97+
api("io.github.sunny-chung:bigtext-ui-composable:2.1.0")
9898
}
9999

100100
resources.srcDir("$buildDir/resources")

src/jvmMain/kotlin/com/sunnychung/application/multiplatform/hellohttp/ux/AppTextField.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import com.sunnychung.lib.multiplatform.bigtext.annotation.ExperimentalBigTextUi
2929
import com.sunnychung.lib.multiplatform.bigtext.core.BigText
3030
import com.sunnychung.lib.multiplatform.bigtext.core.BigTextDecorator
3131
import com.sunnychung.lib.multiplatform.bigtext.core.transform.IncrementalTextTransformation
32+
import com.sunnychung.lib.multiplatform.bigtext.platform.AsyncOperation
3233
import com.sunnychung.lib.multiplatform.bigtext.ux.BigTextFieldState
3334
import com.sunnychung.lib.multiplatform.bigtext.ux.ContextMenuItemEntry
3435
import com.sunnychung.lib.multiplatform.bigtext.ux.CoreBigTextField
@@ -227,6 +228,7 @@ fun AppTextField(
227228
contentPadding: PaddingValues = PaddingValues(6.dp),
228229
hasIndicatorLine: Boolean = false,
229230
onPointerEvent: ((event: PointerEvent, tag: String?) -> Unit)? = null,
231+
isAsynchronous: Boolean = false,
230232

231233
/**
232234
* This parameter exists to work around the weird limitation of `Modifier.semantics(mergeDescendants = true)` that
@@ -272,7 +274,7 @@ fun AppTextField(
272274
onPointerEvent = onPointerEvent,
273275
// interactionSource = interactionSource,
274276
onFinishInit = onFinishInit,
275-
provideUiCoroutineContext = { Dispatchers.Main.immediate },
277+
onHeavyComputation = if (isAsynchronous) AsyncOperation.Asynchronous else AsyncOperation.Synchronous,
276278
padding = PaddingValues(0.dp),
277279
// modifier = Modifier.debugConstraints("core tf"),
278280
)

0 commit comments

Comments
 (0)