mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-09-09 22:20:41 +00:00
Move from ASSentinel to a atomic int
This commit is contained in:
parent
dc6d2e7660
commit
d1054d6ed9
@ -373,7 +373,6 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c)
|
|||||||
_pendingViewState = nil;
|
_pendingViewState = nil;
|
||||||
|
|
||||||
_displaySentinel = nil;
|
_displaySentinel = nil;
|
||||||
_transitionSentinel = nil;
|
|
||||||
|
|
||||||
_pendingDisplayNodes = nil;
|
_pendingDisplayNodes = nil;
|
||||||
}
|
}
|
||||||
@ -825,11 +824,8 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c)
|
|||||||
{
|
{
|
||||||
ASDN::MutexLocker l(_propertyLock);
|
ASDN::MutexLocker l(_propertyLock);
|
||||||
_transitionInProgress = YES;
|
_transitionInProgress = YES;
|
||||||
|
_transitionID = OSAtomicAdd32(1, &_transitionID);
|
||||||
if (!_transitionSentinel) {
|
return _transitionID;
|
||||||
_transitionSentinel = [[ASSentinel alloc] init];
|
|
||||||
}
|
|
||||||
return [_transitionSentinel increment];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)_finishOrCancelTransition
|
- (void)_finishOrCancelTransition
|
||||||
@ -841,11 +837,7 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c)
|
|||||||
- (BOOL)_shouldAbortTransitionWithID:(int32_t)transitionID
|
- (BOOL)_shouldAbortTransitionWithID:(int32_t)transitionID
|
||||||
{
|
{
|
||||||
ASDN::MutexLocker l(_propertyLock);
|
ASDN::MutexLocker l(_propertyLock);
|
||||||
if (_transitionInProgress) {
|
return (!_transitionInProgress || _transitionID != transitionID);
|
||||||
return _transitionSentinel == nil || transitionID != _transitionSentinel.value;
|
|
||||||
}
|
|
||||||
|
|
||||||
return YES;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)animateLayoutTransition:(id<ASContextTransitioning>)context
|
- (void)animateLayoutTransition:(id<ASContextTransitioning>)context
|
||||||
|
@ -94,7 +94,7 @@ FOUNDATION_EXPORT NSString * const ASRenderingEngineDidDisplayNodesScheduledBefo
|
|||||||
|
|
||||||
ASSentinel *_displaySentinel;
|
ASSentinel *_displaySentinel;
|
||||||
|
|
||||||
ASSentinel *_transitionSentinel;
|
int32_t _transitionID;
|
||||||
BOOL _transitionInProgress;
|
BOOL _transitionInProgress;
|
||||||
|
|
||||||
// This is the desired contentsScale, not the scale at which the layer's contents should be displayed
|
// This is the desired contentsScale, not the scale at which the layer's contents should be displayed
|
||||||
|
Loading…
x
Reference in New Issue
Block a user