mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-04 10:33:45 +00:00
Reload the timeline on content size category changes, dynamic type support.
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
import Combine
|
import Combine
|
||||||
|
import UIKit
|
||||||
|
|
||||||
class RoomTimelineController: RoomTimelineControllerProtocol {
|
class RoomTimelineController: RoomTimelineControllerProtocol {
|
||||||
private let timelineProvider: RoomTimelineProviderProtocol
|
private let timelineProvider: RoomTimelineProviderProtocol
|
||||||
@@ -38,6 +39,8 @@ class RoomTimelineController: RoomTimelineControllerProtocol {
|
|||||||
self.updateTimelineItems()
|
self.updateTimelineItems()
|
||||||
}
|
}
|
||||||
}.store(in: &cancellables)
|
}.store(in: &cancellables)
|
||||||
|
|
||||||
|
NotificationCenter.default.addObserver(self, selector: #selector(contentSizeCategoryDidChange), name: UIContentSizeCategory.didChangeNotification, object: nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
func paginateBackwards(_ count: UInt, callback: @escaping ((Result<Void, RoomTimelineControllerError>) -> Void)) {
|
func paginateBackwards(_ count: UInt, callback: @escaping ((Result<Void, RoomTimelineControllerError>) -> Void)) {
|
||||||
@@ -76,6 +79,11 @@ class RoomTimelineController: RoomTimelineControllerProtocol {
|
|||||||
|
|
||||||
// MARK: - Private
|
// MARK: - Private
|
||||||
|
|
||||||
|
@objc private func contentSizeCategoryDidChange() {
|
||||||
|
// Recompute all attributed strings on content size changes -> DynamicType support
|
||||||
|
updateTimelineItems()
|
||||||
|
}
|
||||||
|
|
||||||
private func updateTimelineItems() {
|
private func updateTimelineItems() {
|
||||||
var newTimelineItems = [RoomTimelineItemProtocol]()
|
var newTimelineItems = [RoomTimelineItemProtocol]()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user