mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Populate more aggresively
This commit is contained in:
@@ -161,9 +161,7 @@
|
|||||||
for (NSString *kind in [self supplementaryKinds]) {
|
for (NSString *kind in [self supplementaryKinds]) {
|
||||||
LOG(@"Populating elements of kind: %@, for index paths: %@", kind, indexPaths);
|
LOG(@"Populating elements of kind: %@, for index paths: %@", kind, indexPaths);
|
||||||
NSMutableArray<ASIndexedNodeContext *> *contexts = [NSMutableArray array];
|
NSMutableArray<ASIndexedNodeContext *> *contexts = [NSMutableArray array];
|
||||||
for (NSIndexPath *indexPath in indexPaths) {
|
[self _populateSupplementaryNodesOfKind:kind atIndexPaths:indexPaths mutableContexts:contexts];
|
||||||
[self _populateSupplementaryNodeOfKind:kind atIndexPath:indexPath mutableContexts:contexts];
|
|
||||||
}
|
|
||||||
_pendingContexts[kind] = contexts;
|
_pendingContexts[kind] = contexts;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -190,9 +188,7 @@
|
|||||||
{
|
{
|
||||||
for (NSString *kind in [self supplementaryKinds]) {
|
for (NSString *kind in [self supplementaryKinds]) {
|
||||||
NSMutableArray<ASIndexedNodeContext *> *contexts = [NSMutableArray array];
|
NSMutableArray<ASIndexedNodeContext *> *contexts = [NSMutableArray array];
|
||||||
for (NSIndexPath *indexPath in indexPaths) {
|
[self _populateSupplementaryNodesOfKind:kind atIndexPaths:indexPaths mutableContexts:contexts];
|
||||||
[self _populateSupplementaryNodeOfKind:kind atIndexPath:indexPath mutableContexts:contexts];
|
|
||||||
}
|
|
||||||
_pendingContexts[kind] = contexts;
|
_pendingContexts[kind] = contexts;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -245,6 +241,23 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)_populateSupplementaryNodesOfKind:(NSString *)kind atIndexPaths:(NSArray<NSIndexPath *> *)indexPaths mutableContexts:(NSMutableArray<ASIndexedNodeContext *> *)contexts
|
||||||
|
{
|
||||||
|
NSMutableIndexSet *sections = [NSMutableIndexSet indexSet];
|
||||||
|
for (NSIndexPath *indexPath in indexPaths) {
|
||||||
|
[sections addIndex:indexPath.section];
|
||||||
|
}
|
||||||
|
|
||||||
|
[sections enumerateIndexesUsingBlock:^(NSUInteger idx, BOOL *stop) {
|
||||||
|
NSUInteger rowNum = [self.collectionDataSource dataController:self supplementaryNodesOfKind:kind inSection:idx];
|
||||||
|
NSIndexPath *sectionIndex = [[NSIndexPath alloc] initWithIndex:idx];
|
||||||
|
for (NSUInteger i = 0; i < rowNum; i++) {
|
||||||
|
NSIndexPath *indexPath = [sectionIndex indexPathByAddingIndex:i];
|
||||||
|
[self _populateSupplementaryNodeOfKind:kind atIndexPath:indexPath mutableContexts:contexts];
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
- (void)_populateSupplementaryNodeOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath mutableContexts:(NSMutableArray<ASIndexedNodeContext *> *)contexts
|
- (void)_populateSupplementaryNodeOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath mutableContexts:(NSMutableArray<ASIndexedNodeContext *> *)contexts
|
||||||
{
|
{
|
||||||
ASCellNodeBlock supplementaryCellBlock;
|
ASCellNodeBlock supplementaryCellBlock;
|
||||||
|
|||||||
Reference in New Issue
Block a user