Merge pull request #4183 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x

Update dependency org.matrix.rustcomponents:sdk-android to v0.2.76
This commit is contained in:
Benoit Marty 2025-01-22 16:16:07 +01:00 committed by GitHub
commit 925db81ca5
2 changed files with 38 additions and 18 deletions

View file

@ -173,7 +173,7 @@ jsoup = "org.jsoup:jsoup:1.18.3"
appyx_core = { module = "com.bumble.appyx:core", version.ref = "appyx" } appyx_core = { module = "com.bumble.appyx:core", version.ref = "appyx" }
molecule-runtime = "app.cash.molecule:molecule-runtime:2.0.0" molecule-runtime = "app.cash.molecule:molecule-runtime:2.0.0"
timber = "com.jakewharton.timber:timber:5.0.1" timber = "com.jakewharton.timber:timber:5.0.1"
matrix_sdk = "org.matrix.rustcomponents:sdk-android:0.2.75" matrix_sdk = "org.matrix.rustcomponents:sdk-android:0.2.76"
matrix_richtexteditor = { module = "io.element.android:wysiwyg", version.ref = "wysiwyg" } matrix_richtexteditor = { module = "io.element.android:wysiwyg", version.ref = "wysiwyg" }
matrix_richtexteditor_compose = { module = "io.element.android:wysiwyg-compose", version.ref = "wysiwyg" } matrix_richtexteditor_compose = { module = "io.element.android:wysiwyg-compose", version.ref = "wysiwyg" }
sqldelight-driver-android = { module = "app.cash.sqldelight:android-driver", version.ref = "sqldelight" } sqldelight-driver-android = { module = "app.cash.sqldelight:android-driver", version.ref = "sqldelight" }

View file

@ -76,6 +76,7 @@ import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart
import kotlinx.coroutines.withContext import kotlinx.coroutines.withContext
import org.matrix.rustcomponents.sdk.AllowedMessageTypes
import org.matrix.rustcomponents.sdk.DateDividerMode import org.matrix.rustcomponents.sdk.DateDividerMode
import org.matrix.rustcomponents.sdk.IdentityStatusChangeListener import org.matrix.rustcomponents.sdk.IdentityStatusChangeListener
import org.matrix.rustcomponents.sdk.KnockRequestsListener import org.matrix.rustcomponents.sdk.KnockRequestsListener
@ -83,6 +84,8 @@ import org.matrix.rustcomponents.sdk.RoomInfo
import org.matrix.rustcomponents.sdk.RoomInfoListener import org.matrix.rustcomponents.sdk.RoomInfoListener
import org.matrix.rustcomponents.sdk.RoomListItem import org.matrix.rustcomponents.sdk.RoomListItem
import org.matrix.rustcomponents.sdk.RoomMessageEventMessageType import org.matrix.rustcomponents.sdk.RoomMessageEventMessageType
import org.matrix.rustcomponents.sdk.TimelineConfiguration
import org.matrix.rustcomponents.sdk.TimelineFocus
import org.matrix.rustcomponents.sdk.TypingNotificationsListener import org.matrix.rustcomponents.sdk.TypingNotificationsListener
import org.matrix.rustcomponents.sdk.UserPowerLevelUpdate import org.matrix.rustcomponents.sdk.UserPowerLevelUpdate
import org.matrix.rustcomponents.sdk.WidgetCapabilities import org.matrix.rustcomponents.sdk.WidgetCapabilities
@ -206,10 +209,16 @@ class RustMatrixRoom(
override suspend fun timelineFocusedOnEvent(eventId: EventId): Result<Timeline> = withContext(roomDispatcher) { override suspend fun timelineFocusedOnEvent(eventId: EventId): Result<Timeline> = withContext(roomDispatcher) {
runCatching { runCatching {
innerRoom.timelineFocusedOnEvent( innerRoom.timelineWithConfiguration(
eventId = eventId.value, configuration = TimelineConfiguration(
numContextEvents = 50u, focus = TimelineFocus.Event(
internalIdPrefix = "focus_$eventId", eventId = eventId.value,
numContextEvents = 50u,
),
allowedMessageTypes = AllowedMessageTypes.All,
internalIdPrefix = "focus_$eventId",
dateDividerMode = DateDividerMode.DAILY,
)
).let { inner -> ).let { inner ->
createTimeline(inner, mode = Timeline.Mode.FOCUSED_ON_EVENT) createTimeline(inner, mode = Timeline.Mode.FOCUSED_ON_EVENT)
} }
@ -224,10 +233,16 @@ class RustMatrixRoom(
override suspend fun pinnedEventsTimeline(): Result<Timeline> = withContext(roomDispatcher) { override suspend fun pinnedEventsTimeline(): Result<Timeline> = withContext(roomDispatcher) {
runCatching { runCatching {
innerRoom.pinnedEventsTimeline( innerRoom.timelineWithConfiguration(
internalIdPrefix = "pinned_events", configuration = TimelineConfiguration(
maxEventsToLoad = 100u, focus = TimelineFocus.PinnedEvents(
maxConcurrentRequests = 10u, maxEventsToLoad = 100u,
maxConcurrentRequests = 10u,
),
allowedMessageTypes = AllowedMessageTypes.All,
internalIdPrefix = "pinned_events",
dateDividerMode = DateDividerMode.DAILY,
)
).let { inner -> ).let { inner ->
createTimeline(inner, mode = Timeline.Mode.PINNED_EVENTS) createTimeline(inner, mode = Timeline.Mode.PINNED_EVENTS)
} }
@ -240,15 +255,20 @@ class RustMatrixRoom(
override suspend fun mediaTimeline(): Result<Timeline> = withContext(roomDispatcher) { override suspend fun mediaTimeline(): Result<Timeline> = withContext(roomDispatcher) {
runCatching { runCatching {
innerRoom.messageFilteredTimeline( innerRoom.timelineWithConfiguration(
internalIdPrefix = "MediaGallery_", configuration = TimelineConfiguration(
allowedMessageTypes = listOf( focus = TimelineFocus.Live,
RoomMessageEventMessageType.FILE, allowedMessageTypes = AllowedMessageTypes.Only(
RoomMessageEventMessageType.IMAGE, types = listOf(
RoomMessageEventMessageType.VIDEO, RoomMessageEventMessageType.FILE,
RoomMessageEventMessageType.AUDIO, RoomMessageEventMessageType.IMAGE,
), RoomMessageEventMessageType.VIDEO,
dateDividerMode = DateDividerMode.MONTHLY, RoomMessageEventMessageType.AUDIO,
)
),
internalIdPrefix = "MediaGallery_",
dateDividerMode = DateDividerMode.MONTHLY,
)
).let { inner -> ).let { inner ->
createTimeline(inner, mode = Timeline.Mode.MEDIA) createTimeline(inner, mode = Timeline.Mode.MEDIA)
} }