mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 14:20:20 +00:00
[ASCollectionNode] Add .collectionViewClass to ASCollectionNode+Beta. (#3198)
Although we may not want to support this property long-term, there are some usages of it that are difficult to avoid. Specifically because the complexity it adds is both low, and contained to a small area of the code that would be easy to remove it, it would be great to support this. The usage relates to apps that require the Interop protocol, and are architected to expect a few methods / protocols being implemented on the UICollectionView class itself. It does not directly override ASCollectionView behaviors. So hypothetically, it would also work if it were possible to set ASCollectionView's superclass. Instead, the app is making its own subclass descend from ASCollectionView and use the interop APIs, even in environments where there are no ASCellNodes ever returned.
This commit is contained in:
@@ -16,6 +16,13 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface ASCollectionNode (Beta)
|
||||
|
||||
/**
|
||||
* Allows providing a custom subclass of ASCollectionView to be managed by ASCollectionNode.
|
||||
*
|
||||
* @default [ASCollectionView class] is used whenever this property is unset or nil.
|
||||
*/
|
||||
@property (strong, nonatomic, nullable) Class collectionViewClass;
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout layoutFacilitator:(nullable id<ASCollectionViewLayoutFacilitatorProtocol>)layoutFacilitator;
|
||||
|
||||
- (void)beginUpdates ASDISPLAYNODE_DEPRECATED_MSG("Use -performBatchUpdates:completion: instead.");
|
||||
|
||||
Reference in New Issue
Block a user