mirror of
https://github.com/matrix-org/matrix-rust-sdk.git
synced 2026-05-14 19:16:02 -04:00
feat(sdk): Add support for AnySyncTimelineEvent in event handlers
This commit is contained in:
committed by
Jonas Platte
parent
d4ac1bffd0
commit
245ecea263
@@ -111,6 +111,7 @@ pub enum HandlerKind {
|
||||
GlobalAccountData,
|
||||
RoomAccountData,
|
||||
EphemeralRoomData,
|
||||
Timeline,
|
||||
MessageLike,
|
||||
OriginalMessageLike,
|
||||
RedactedMessageLike,
|
||||
@@ -397,6 +398,10 @@ impl Client {
|
||||
// Event handlers specifically for redacted OR unredacted timeline events
|
||||
self.call_event_handlers(room, raw_event, handler_kind_r, &event_type, encryption_info)
|
||||
.await;
|
||||
|
||||
// Event handlers for `AnySyncTimelineEvent`
|
||||
let kind = HandlerKind::Timeline;
|
||||
self.call_event_handlers(room, raw_event, kind, &event_type, encryption_info).await;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
|
||||
@@ -19,10 +19,11 @@ use ruma::{
|
||||
self,
|
||||
presence::{PresenceEvent, PresenceEventContent},
|
||||
AnyGlobalAccountDataEvent, AnyRoomAccountDataEvent, AnyStrippedStateEvent,
|
||||
AnySyncEphemeralRoomEvent, AnySyncMessageLikeEvent, AnySyncStateEvent, AnyToDeviceEvent,
|
||||
EphemeralRoomEventContent, GlobalAccountDataEventContent, MessageLikeEventContent,
|
||||
RedactContent, RedactedEventContent, RoomAccountDataEventContent, StateEventContent,
|
||||
StaticEventContent, ToDeviceEventContent,
|
||||
AnySyncEphemeralRoomEvent, AnySyncMessageLikeEvent, AnySyncStateEvent,
|
||||
AnySyncTimelineEvent, AnyToDeviceEvent, EphemeralRoomEventContent,
|
||||
GlobalAccountDataEventContent, MessageLikeEventContent, RedactContent,
|
||||
RedactedEventContent, RoomAccountDataEventContent, StateEventContent, StaticEventContent,
|
||||
ToDeviceEventContent,
|
||||
},
|
||||
serde::Raw,
|
||||
};
|
||||
@@ -157,6 +158,11 @@ impl SyncEvent for AnySyncEphemeralRoomEvent {
|
||||
const TYPE: Option<&'static str> = None;
|
||||
}
|
||||
|
||||
impl SyncEvent for AnySyncTimelineEvent {
|
||||
const KIND: HandlerKind = HandlerKind::Timeline;
|
||||
const TYPE: Option<&'static str> = None;
|
||||
}
|
||||
|
||||
impl SyncEvent for AnySyncMessageLikeEvent {
|
||||
const KIND: HandlerKind = HandlerKind::MessageLike;
|
||||
const TYPE: Option<&'static str> = None;
|
||||
|
||||
Reference in New Issue
Block a user