Let nodes deallocate naturally, manually trampoline UIKit ivars

Be more aggressive with main thread punting

Trampoline setting the dataSource/delegate onto the main thread

Short-circuit the supplementary nodes method if no data source

Don't rely on assertions

Mark variable unused to fix release builds

Handle ASCollectionNode/ASTableNode deallocation better

Add some comments about new macro
This commit is contained in:
Adlai Holler
2016-09-09 11:09:57 -07:00
parent 1b0b9e4830
commit 6d01bbeb19
19 changed files with 394 additions and 651 deletions

View File

@@ -19,6 +19,7 @@
#import "ASTraitCollection.h"
#import "ASEnvironmentInternal.h"
#import "ASRangeControllerUpdateRangeProtocol+Beta.h"
#import "ASInternalHelpers.h"
#define AS_LOG_VISIBILITY_CHANGES 0
@@ -61,6 +62,11 @@
return self;
}
- (void)dealloc
{
ASPerformBackgroundDeallocation(_node);
}
- (void)loadView
{
ASDisplayNodeAssertTrue(!_node.layerBacked);