From 7f652e2c173d5e18c7eb46d9cf0e53e398b555a4 Mon Sep 17 00:00:00 2001 From: Shiyi Zhao Date: Fri, 10 Mar 2017 18:50:59 -0800 Subject: [PATCH] fix a bug which caused double inset being applied when having non-zero left contentInset. Summary: [IGListCollectionViewLayout]: fix a bug which caused double inset being applied when having non-zero left contentInset. Reviewed By: jessesquires Differential Revision: D4692870 fbshipit-source-id: 1a1a3ccf944a83fea3a706b83f54293346b35c5a --- Source/IGListCollectionViewLayout.mm | 4 ++-- Tests/IGListCollectionViewLayoutTests.m | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Source/IGListCollectionViewLayout.mm b/Source/IGListCollectionViewLayout.mm index 8399a061..6a8442a3 100644 --- a/Source/IGListCollectionViewLayout.mm +++ b/Source/IGListCollectionViewLayout.mm @@ -373,7 +373,7 @@ static void adjustZIndexForAttributes(UICollectionViewLayoutAttributes *attribut } } - const CGRect frame = CGRectMake(contentInset.left + itemX, + const CGRect frame = CGRectMake(itemX, itemY + insets.top, itemWidth, size.height); @@ -393,7 +393,7 @@ static void adjustZIndexForAttributes(UICollectionViewLayoutAttributes *attribut } } - const CGRect headerBounds = CGRectMake(contentInset.left + insets.left, + const CGRect headerBounds = CGRectMake(insets.left, CGRectGetMinY(rollingSectionBounds) - headerSize.height, paddedWidth, headerSize.height); diff --git a/Tests/IGListCollectionViewLayoutTests.m b/Tests/IGListCollectionViewLayoutTests.m index 81b5b4c2..22cd1919 100644 --- a/Tests/IGListCollectionViewLayoutTests.m +++ b/Tests/IGListCollectionViewLayoutTests.m @@ -582,9 +582,9 @@ XCTAssertEqual(CGRectGetHeight(expected), CGRectGetHeight(frame)); \ ]], ]]; XCTAssertEqual(self.collectionView.contentSize.height, 40); - IGAssertEqualFrame([self headerForSection:0].frame, 30, 0, 40, 10); - IGAssertEqualFrame([self cellForSection:0 item:0].frame, 30, 10, 40, 10); - IGAssertEqualFrame([self cellForSection:0 item:1].frame, 30, 20, 40, 20); + IGAssertEqualFrame([self headerForSection:0].frame, 0, 0, 40, 10); + IGAssertEqualFrame([self cellForSection:0 item:0].frame, 0, 10, 40, 10); + IGAssertEqualFrame([self cellForSection:0 item:1].frame, 0, 20, 40, 20); } - (void)test_ {