Various experiments

This commit is contained in:
Ali
2022-05-06 21:14:28 +04:00
parent af8c4781fb
commit 902263cf59
52 changed files with 3896 additions and 165 deletions

View File

@@ -17,7 +17,7 @@ private func findTaggedViewImpl(view: UIView, tag: Any) -> UIView? {
return nil
}
public final class ComponentHostView<EnvironmentType: Equatable>: UIView {
public final class ComponentHostView<EnvironmentType>: UIView {
private var currentComponent: AnyComponent<EnvironmentType>?
private var currentContainerSize: CGSize?
private var currentSize: CGSize?
@@ -43,9 +43,7 @@ public final class ComponentHostView<EnvironmentType: Equatable>: UIView {
self.isUpdating = true
precondition(containerSize.width.isFinite)
precondition(containerSize.width < .greatestFiniteMagnitude)
precondition(containerSize.height.isFinite)
precondition(containerSize.height < .greatestFiniteMagnitude)
let componentView: UIView
if let current = self.componentView {
@@ -62,8 +60,9 @@ public final class ComponentHostView<EnvironmentType: Equatable>: UIView {
if updateEnvironment {
EnvironmentBuilder._environment = context.erasedEnvironment
let _ = maybeEnvironment()
let environmentResult = maybeEnvironment()
EnvironmentBuilder._environment = nil
context.erasedEnvironment = environmentResult
}
let isEnvironmentUpdated = context.erasedEnvironment.calculateIsUpdated()