diff --git a/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.m b/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.m index ed649ebf7..7e9522bfc 100644 --- a/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.m +++ b/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.m @@ -2885,6 +2885,11 @@ typedef NS_ENUM (NSUInteger, MXKRoomDataSourceError) { return YES; } + // Specific case for voice broadcast event + if (event.eventType == MXEventTypeCustom && [event.type isEqualToString:VoiceBroadcastSettings.voiceBroadcastInfoContentKeyType]) { + return YES; + } + BOOL isRoomMessage = (event.eventType == MXEventTypeRoomMessage); if (!isRoomMessage) { diff --git a/Riot/Modules/Room/CellData/RoomBubbleCellData.m b/Riot/Modules/Room/CellData/RoomBubbleCellData.m index 91ca6e415..f3c7db526 100644 --- a/Riot/Modules/Room/CellData/RoomBubbleCellData.m +++ b/Riot/Modules/Room/CellData/RoomBubbleCellData.m @@ -634,9 +634,11 @@ NSString *const URLPreviewDidUpdateNotification = @"URLPreviewDidUpdateNotificat { __block NSInteger firstVisibleComponentIndex = NSNotFound; - BOOL isPoll = (self.events.firstObject.eventType == MXEventTypePollStart); + MXEvent *firstEvent = self.events.firstObject; + BOOL isPoll = (firstEvent.eventType == MXEventTypePollStart); + BOOL isVoiceBroadcast = (firstEvent.eventType == MXEventTypeCustom && [firstEvent.type isEqualToString: VoiceBroadcastSettings.voiceBroadcastInfoContentKeyType]); - if ((isPoll || self.attachment) && self.bubbleComponents.count) + if ((isPoll || self.attachment || isVoiceBroadcast) && self.bubbleComponents.count) { firstVisibleComponentIndex = 0; } diff --git a/changelog.d/7179.feature b/changelog.d/7179.feature new file mode 100644 index 000000000..d11f310a5 --- /dev/null +++ b/changelog.d/7179.feature @@ -0,0 +1 @@ +Voice Broadcast: allow to react on Voice Broadcast.