From 40aa2876d11da8fa08cc38c3700320ef283355fc Mon Sep 17 00:00:00 2001 From: Nikita Semenov Date: Thu, 9 Mar 2023 22:01:45 +0300 Subject: [PATCH] fix: code review notes --- .../Views/Skeletons/Helpers/UIView+Skeletons.swift | 2 +- .../Sources/Views/Skeletons/SkeletonLayer.swift | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/TIUIElements/Sources/Views/Skeletons/Helpers/UIView+Skeletons.swift b/TIUIElements/Sources/Views/Skeletons/Helpers/UIView+Skeletons.swift index 2612a36b..5dfcd05a 100644 --- a/TIUIElements/Sources/Views/Skeletons/Helpers/UIView+Skeletons.swift +++ b/TIUIElements/Sources/Views/Skeletons/Helpers/UIView+Skeletons.swift @@ -78,7 +78,7 @@ extension UIView { return .parentView(self) } else { - return .anyFinalView(self) + return .leafView(self) } } diff --git a/TIUIElements/Sources/Views/Skeletons/SkeletonLayer.swift b/TIUIElements/Sources/Views/Skeletons/SkeletonLayer.swift index 46f0c91d..dd293ed7 100644 --- a/TIUIElements/Sources/Views/Skeletons/SkeletonLayer.swift +++ b/TIUIElements/Sources/Views/Skeletons/SkeletonLayer.swift @@ -36,7 +36,7 @@ open class SkeletonLayer: CAShapeLayer { case imageView(UIImageView) case textView(UITextView) case label(UILabel) - case anyFinalView(UIView) + case leafView(UIView) public var view: UIView { switch self { @@ -52,7 +52,7 @@ open class SkeletonLayer: CAShapeLayer { case let .textView(textView): return textView - case let .anyFinalView(view): + case let .leafView(view): return view case let .skeletonsHolderView(view): @@ -121,8 +121,11 @@ open class SkeletonLayer: CAShapeLayer { open func remove(from view: UIView) { stopAnimation() removeFromSuperlayer() - viewBoundsObservation = nil - applicationStateObservation = nil + viewBoundsObservation?.invalidate() + + if let observation = applicationStateObservation { + NotificationCenter.default.removeObserver(observation) + } } open func startAnimation() { @@ -187,7 +190,7 @@ open class SkeletonLayer: CAShapeLayer { let viewFrame = CGRect(origin: rect.origin, size: path?.boundingBox.size ?? rect.size) frame = configuration.containerViewConfiguration.applyPadding(viewFrame: viewFrame) - case .anyFinalView(_): + case .leafView(_): path = configuration.viewConfiguration.drawPath(rect: viewType.view.bounds) let viewFrame = CGRect(origin: rect.origin, size: path?.boundingBox.size ?? rect.size)