mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-23 06:35:51 +00:00
Merge pull request #1174 from levi/implicitHierarchyFix
Wrap implicit hierarchy management behind beta feature flag
This commit is contained in:
@@ -644,6 +644,7 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c)
|
|||||||
if (!_flags.isMeasured || !ASSizeRangeEqualToSizeRange(constrainedSize, _constrainedSize)) {
|
if (!_flags.isMeasured || !ASSizeRangeEqualToSizeRange(constrainedSize, _constrainedSize)) {
|
||||||
ASLayout *newLayout = [self calculateLayoutThatFits:constrainedSize];
|
ASLayout *newLayout = [self calculateLayoutThatFits:constrainedSize];
|
||||||
|
|
||||||
|
if ([[self class] usesImplicitHierarchyManagement]) {
|
||||||
if (_layout) {
|
if (_layout) {
|
||||||
NSIndexSet *insertions, *deletions;
|
NSIndexSet *insertions, *deletions;
|
||||||
[_layout.sublayouts asdk_diffWithArray:newLayout.sublayouts insertions:&insertions deletions:&deletions compareBlock:^BOOL(ASLayout *lhs, ASLayout *rhs) {
|
[_layout.sublayouts asdk_diffWithArray:newLayout.sublayouts insertions:&insertions deletions:&deletions compareBlock:^BOOL(ASLayout *lhs, ASLayout *rhs) {
|
||||||
@@ -656,6 +657,7 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c)
|
|||||||
_insertedSubnodes = [self _filterNodesInLayouts:newLayout.sublayouts withIndexes:indexes];
|
_insertedSubnodes = [self _filterNodesInLayouts:newLayout.sublayouts withIndexes:indexes];
|
||||||
_deletedSubnodes = @[];
|
_deletedSubnodes = @[];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
_layout = newLayout;
|
_layout = newLayout;
|
||||||
_constrainedSize = constrainedSize;
|
_constrainedSize = constrainedSize;
|
||||||
|
|||||||
Reference in New Issue
Block a user