diff --git a/app/src/main/java/io/legado/app/ui/book/read/ReadBookRouteScreen.kt b/app/src/main/java/io/legado/app/ui/book/read/ReadBookRouteScreen.kt index 184c4bff1..6e87e6245 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/ReadBookRouteScreen.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/ReadBookRouteScreen.kt @@ -46,7 +46,6 @@ import io.legado.app.ui.replace.ReplaceEditRoute import io.legado.app.ui.replace.ReplaceRuleActivity import io.legado.app.utils.StartActivityContract import io.legado.app.utils.takePersistablePermissionSafely -import kotlinx.coroutines.CompletableDeferred import kotlinx.coroutines.flow.onSubscription import kotlinx.coroutines.launch @@ -233,10 +232,9 @@ fun ReadBookRouteScreen( // ── Effect collection: route handles launcher effects, rest goes to bridge ── LaunchedEffect(viewModel) { - val effectsSubscribed = CompletableDeferred() launch { viewModel.effects - .onSubscription { effectsSubscribed.complete(Unit) } + .onSubscription { onEffectsReady() } .collect { effect -> try { when (effect) { @@ -278,6 +276,7 @@ fun ReadBookRouteScreen( putExtra("sourceOrigin", effect.sourceOrigin) putExtra("sourceName", effect.sourceName) effect.sourceType?.let { putExtra("sourceType", it) } + effect.html?.let { putExtra("html", it) } } ) } @@ -363,8 +362,6 @@ fun ReadBookRouteScreen( } } } - effectsSubscribed.await() - onEffectsReady() } // ── System UI sync ────────────────────────────────────────────────