@craft-native/ios 0.0.195 → 0.0.196

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@craft-native/ios",
3
- "version": "0.0.195",
3
+ "version": "0.0.196",
4
4
  "homepage": "https://github.com/craft-native/craft/tree/main/packages/ios#readme",
5
5
  "repository": {
6
6
  "type": "git",
@@ -214,6 +214,19 @@ final class CraftNativeFlatList: UICollectionView, UICollectionViewDelegateFlowL
214
214
  if flowLayout.estimatedItemSize != estimate, bounds.width > 0 {
215
215
  flowLayout.estimatedItemSize = estimate
216
216
  }
217
+ // Cells can outlive a change to the list's width (including its first
218
+ // constrained parent layout). Self-sizing must use the current extent,
219
+ // or UIKit repeatedly receives a preferred width wider than the list.
220
+ var changedExtent = false
221
+ for case let cell as Cell in visibleCells {
222
+ guard let identity = cell.representedIdentity, let item = itemsByIdentity[identity] else { continue }
223
+ let extent = itemExtent(isChrome: item.isChrome)
224
+ if cell.fittingExtent != extent {
225
+ cell.fittingExtent = extent
226
+ changedExtent = true
227
+ }
228
+ }
229
+ if changedExtent { flowLayout.invalidateLayout() }
217
230
  super.layoutSubviews()
218
231
  craftApplyCornerRadius()
219
232
  }
@@ -5534,6 +5534,7 @@ final class CraftNativeScreenController: UIViewController, UIScrollViewDelegate,
5534
5534
  scale = 1
5535
5535
  }
5536
5536
  indicator.indicatorScale = scale
5537
+ applyTransform(style["transform"], to: indicator)
5537
5538
  indicator.color = color(props["color"]) ?? .tintColor
5538
5539
  indicator.hidesWhenStopped = props["hidesWhenStopped"] as? Bool ?? true
5539
5540
  if props["animating"] as? Bool == false {