diff --git a/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.h b/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.h index 5d001ef08..146f5b23b 100644 --- a/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.h +++ b/Riot/Modules/MatrixKit/Models/Room/MXKRoomDataSource.h @@ -353,10 +353,17 @@ extern NSString *const kMXKRoomDataSourceTimelineErrorErrorKey; - (void)limitMemoryUsage:(NSInteger)maxBubbleNb; /** - Force data reload. + Force data reload. Calls `reloadNotifying` with `YES`. */ - (void)reload; +/** + Force data reload. + + @param notify Flag to notify the delegate about the changes. + */ +- (void)reloadNotifying:(BOOL)notify; + /** Called when room property changed. Designed to be used by subclasses. */ diff --git a/Riot/Modules/Room/DataSources/RoomDataSource.m b/Riot/Modules/Room/DataSources/RoomDataSource.m index 5e91b0d51..13f8fffc1 100644 --- a/Riot/Modules/Room/DataSources/RoomDataSource.m +++ b/Riot/Modules/Room/DataSources/RoomDataSource.m @@ -973,6 +973,13 @@ const CGFloat kTypingCellHeight = 24; // no need to reload when paginating back return; } + + BOOL notify = YES; + if (self.threadId) + { + // no need to notify the thread screen, it'll cause a flickering + notify = NO; + } NSUInteger count = 0; @synchronized (bubbles) { @@ -980,7 +987,7 @@ const CGFloat kTypingCellHeight = 24; } if (count > 0) { - [self reload]; + [self reloadNotifying:notify]; } }