Ensure that htmlConverterProvider is initialized when viewing Pinned events. Fixes #5763

This commit is contained in:
Benoit Marty
2025-11-19 14:37:19 +01:00
parent c6c2f4a267
commit 2861d1cf8e
2 changed files with 5 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ import dev.zacsweers.metro.AssistedFactory
import dev.zacsweers.metro.AssistedInject
import im.vector.app.features.analytics.plan.Interaction
import im.vector.app.features.analytics.plan.PinUnpinAction
import io.element.android.features.messages.api.timeline.HtmlConverterProvider
import io.element.android.features.messages.impl.UserEventPermissions
import io.element.android.features.messages.impl.actionlist.ActionListState
import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction
@@ -76,6 +77,7 @@ class PinnedMessagesListPresenter(
private val sessionCoroutineScope: CoroutineScope,
private val analyticsService: AnalyticsService,
private val featureFlagService: FeatureFlagService,
private val htmlConverterProvider: HtmlConverterProvider,
) : Presenter<PinnedMessagesListState> {
@AssistedFactory
interface Factory {
@@ -94,6 +96,7 @@ class PinnedMessagesListPresenter(
@Composable
override fun present(): PinnedMessagesListState {
htmlConverterProvider.Update()
val isDm by room.isDmAsState()
val timelineRoomInfo = remember(isDm) {

View File

@@ -17,6 +17,7 @@ import io.element.android.features.messages.impl.link.aLinkState
import io.element.android.features.messages.impl.pinned.DefaultPinnedEventsTimelineProvider
import io.element.android.features.messages.impl.timeline.model.TimelineItem
import io.element.android.features.messages.impl.timeline.protection.aTimelineProtectionState
import io.element.android.features.messages.test.timeline.FakeHtmlConverterProvider
import io.element.android.libraries.designsystem.utils.snackbar.SnackbarDispatcher
import io.element.android.libraries.featureflag.test.FakeFeatureFlagService
import io.element.android.libraries.matrix.api.core.EventId
@@ -319,6 +320,7 @@ class PinnedMessagesListPresenterTest {
analyticsService = analyticsService,
featureFlagService = featureFlagService,
sessionCoroutineScope = this,
htmlConverterProvider = FakeHtmlConverterProvider(),
)
}
}