From 962d1a937d008bc3f4bc2fa22e798b9fc200abc2 Mon Sep 17 00:00:00 2001 From: Ivan Vorobei Date: Thu, 31 Jan 2019 21:20:53 +0300 Subject: [PATCH] Update to 1.2.2 Add new parametr - `colorIndicator` for change color arrow. Update example & Readme. Fix `SPStorkIndicatorView ` --- .../project.pbxproj | 52 +++++++++--------- .../UserInterfaceState.xcuserstate | Bin 50096 -> 50128 bytes .../SPStorkIndicatorView.swift | 10 +++- .../SPStorkPresentationController.swift | 4 ++ .../SPStorkTransitioningDelegate.swift | 2 + README.md | 5 ++ SPStorkController.podspec | 2 +- .../SPStorkIndicatorView.swift | 10 +++- .../SPStorkPresentationController.swift | 4 ++ .../SPStorkTransitioningDelegate.swift | 2 + 10 files changed, 60 insertions(+), 31 deletions(-) diff --git a/Example/stork-controller.xcodeproj/project.pbxproj b/Example/stork-controller.xcodeproj/project.pbxproj index 64683cf..dfe0b2b 100644 --- a/Example/stork-controller.xcodeproj/project.pbxproj +++ b/Example/stork-controller.xcodeproj/project.pbxproj @@ -131,12 +131,12 @@ F4891A4C21FC738800E65424 /* SPRandom.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919CC21FC738800E65424 /* SPRandom.swift */; }; F4891A4D21FC738800E65424 /* SPDelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919CE21FC738800E65424 /* SPDelay.swift */; }; F4891A4E21FC738800E65424 /* SPShare.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D021FC738800E65424 /* SPShare.swift */; }; - F4891A4F21FC738800E65424 /* SPStorkTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D321FC738800E65424 /* SPStorkTransitioningDelegate.swift */; }; - F4891A5021FC738800E65424 /* SPStorkPresentingAnimationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D421FC738800E65424 /* SPStorkPresentingAnimationController.swift */; }; - F4891A5121FC738800E65424 /* SPStorkPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D521FC738800E65424 /* SPStorkPresentationController.swift */; }; - F4891A5221FC738800E65424 /* SPStorkController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D621FC738800E65424 /* SPStorkController.swift */; }; - F4891A5321FC738800E65424 /* SPStorkIndicatorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D721FC738800E65424 /* SPStorkIndicatorView.swift */; }; - F4891A5421FC738800E65424 /* SPStorkDismissingAnimationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48919D821FC738800E65424 /* SPStorkDismissingAnimationController.swift */; }; + F4B9E13B2203734E00E87087 /* SPStorkTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E1352203734E00E87087 /* SPStorkTransitioningDelegate.swift */; }; + F4B9E13C2203734E00E87087 /* SPStorkPresentingAnimationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E1362203734E00E87087 /* SPStorkPresentingAnimationController.swift */; }; + F4B9E13D2203734E00E87087 /* SPStorkPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E1372203734E00E87087 /* SPStorkPresentationController.swift */; }; + F4B9E13E2203734E00E87087 /* SPStorkController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E1382203734E00E87087 /* SPStorkController.swift */; }; + F4B9E13F2203734E00E87087 /* SPStorkIndicatorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E1392203734E00E87087 /* SPStorkIndicatorView.swift */; }; + F4B9E1402203734E00E87087 /* SPStorkDismissingAnimationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B9E13A2203734E00E87087 /* SPStorkDismissingAnimationController.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -266,12 +266,12 @@ F48919CC21FC738800E65424 /* SPRandom.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPRandom.swift; sourceTree = ""; }; F48919CE21FC738800E65424 /* SPDelay.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPDelay.swift; sourceTree = ""; }; F48919D021FC738800E65424 /* SPShare.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPShare.swift; sourceTree = ""; }; - F48919D321FC738800E65424 /* SPStorkTransitioningDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkTransitioningDelegate.swift; sourceTree = ""; }; - F48919D421FC738800E65424 /* SPStorkPresentingAnimationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkPresentingAnimationController.swift; sourceTree = ""; }; - F48919D521FC738800E65424 /* SPStorkPresentationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkPresentationController.swift; sourceTree = ""; }; - F48919D621FC738800E65424 /* SPStorkController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkController.swift; sourceTree = ""; }; - F48919D721FC738800E65424 /* SPStorkIndicatorView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkIndicatorView.swift; sourceTree = ""; }; - F48919D821FC738800E65424 /* SPStorkDismissingAnimationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkDismissingAnimationController.swift; sourceTree = ""; }; + F4B9E1352203734E00E87087 /* SPStorkTransitioningDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkTransitioningDelegate.swift; sourceTree = ""; }; + F4B9E1362203734E00E87087 /* SPStorkPresentingAnimationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkPresentingAnimationController.swift; sourceTree = ""; }; + F4B9E1372203734E00E87087 /* SPStorkPresentationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkPresentationController.swift; sourceTree = ""; }; + F4B9E1382203734E00E87087 /* SPStorkController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkController.swift; sourceTree = ""; }; + F4B9E1392203734E00E87087 /* SPStorkIndicatorView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkIndicatorView.swift; sourceTree = ""; }; + F4B9E13A2203734E00E87087 /* SPStorkDismissingAnimationController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SPStorkDismissingAnimationController.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -320,8 +320,8 @@ F445CA9821AED98500184254 /* Frameworks */ = { isa = PBXGroup; children = ( + F4B9E1342203734E00E87087 /* SPStorkController */, F489192F21FC738800E65424 /* SparrowKit */, - F48919D221FC738800E65424 /* SPStorkController */, ); path = Frameworks; sourceTree = ""; @@ -803,15 +803,15 @@ path = Badge; sourceTree = ""; }; - F48919D221FC738800E65424 /* SPStorkController */ = { + F4B9E1342203734E00E87087 /* SPStorkController */ = { isa = PBXGroup; children = ( - F48919D321FC738800E65424 /* SPStorkTransitioningDelegate.swift */, - F48919D421FC738800E65424 /* SPStorkPresentingAnimationController.swift */, - F48919D521FC738800E65424 /* SPStorkPresentationController.swift */, - F48919D621FC738800E65424 /* SPStorkController.swift */, - F48919D721FC738800E65424 /* SPStorkIndicatorView.swift */, - F48919D821FC738800E65424 /* SPStorkDismissingAnimationController.swift */, + F4B9E1352203734E00E87087 /* SPStorkTransitioningDelegate.swift */, + F4B9E1362203734E00E87087 /* SPStorkPresentingAnimationController.swift */, + F4B9E1372203734E00E87087 /* SPStorkPresentationController.swift */, + F4B9E1382203734E00E87087 /* SPStorkController.swift */, + F4B9E1392203734E00E87087 /* SPStorkIndicatorView.swift */, + F4B9E13A2203734E00E87087 /* SPStorkDismissingAnimationController.swift */, ); path = SPStorkController; sourceTree = ""; @@ -911,7 +911,7 @@ F4891A0421FC738800E65424 /* SPFormTextTableViewCell.swift in Sources */, F4891A3521FC738800E65424 /* SPMail.swift in Sources */, F48919DA21FC738800E65424 /* SPPlayCircleButton.swift in Sources */, - F4891A5421FC738800E65424 /* SPStorkDismissingAnimationController.swift in Sources */, + F4B9E1402203734E00E87087 /* SPStorkDismissingAnimationController.swift in Sources */, F4891A1D21FC738800E65424 /* SPUIViewControllerExtenshion.swift in Sources */, F4891A0921FC738800E65424 /* SPTableViewCell.swift in Sources */, F48919FC21FC738800E65424 /* SPEmptyProposeView.swift in Sources */, @@ -941,7 +941,7 @@ F4891A2521FC738800E65424 /* SPCGRectExtension.swift in Sources */, F4891A4E21FC738800E65424 /* SPShare.swift in Sources */, F48919F021FC738800E65424 /* SPFakeBarView.swift in Sources */, - F4891A5221FC738800E65424 /* SPStorkController.swift in Sources */, + F4B9E13E2203734E00E87087 /* SPStorkController.swift in Sources */, F4891A1C21FC738800E65424 /* SPUserDefaultsExtenshion.swift in Sources */, F48919E121FC738800E65424 /* SPButton.swift in Sources */, F48919FA21FC738800E65424 /* SPEmptyProposeLabel.swift in Sources */, @@ -974,7 +974,7 @@ F48919EE21FC738800E65424 /* SPMengTransformCollectionView.swift in Sources */, F4891A4421FC738800E65424 /* SPAudio.swift in Sources */, F4891A3721FC738800E65424 /* SPShadow.swift in Sources */, - F4891A5021FC738800E65424 /* SPStorkPresentingAnimationController.swift in Sources */, + F4B9E13C2203734E00E87087 /* SPStorkPresentingAnimationController.swift in Sources */, F4891A2B21FC738800E65424 /* SPUIButtonExtenshion.swift in Sources */, F48919F121FC738800E65424 /* SPEmptyTitlesView.swift in Sources */, F4891A2721FC738800E65424 /* SPDateExtenshion.swift in Sources */, @@ -998,15 +998,15 @@ F4891A1721FC738800E65424 /* SPUIFontExtenshion.swift in Sources */, F4891A3821FC738800E65424 /* SPShadowDeep.swift in Sources */, F48919FF21FC738800E65424 /* SPFormMailTableViewCell.swift in Sources */, - F4891A5321FC738800E65424 /* SPStorkIndicatorView.swift in Sources */, + F4B9E13F2203734E00E87087 /* SPStorkIndicatorView.swift in Sources */, F4891A1B21FC738800E65424 /* SPArrayExtension.swift in Sources */, F48919FE21FC738800E65424 /* SPFormButtonTableViewCell.swift in Sources */, - F4891A5121FC738800E65424 /* SPStorkPresentationController.swift in Sources */, + F4B9E13D2203734E00E87087 /* SPStorkPresentationController.swift in Sources */, F4891A0C21FC738800E65424 /* SPSystemIconView.swift in Sources */, F4891A4021FC738800E65424 /* SPViber.swift in Sources */, F4891A1121FC738800E65424 /* SPSpotlight.swift in Sources */, F4891A1821FC738800E65424 /* SPUIImageExtension.swift in Sources */, - F4891A4F21FC738800E65424 /* SPStorkTransitioningDelegate.swift in Sources */, + F4B9E13B2203734E00E87087 /* SPStorkTransitioningDelegate.swift in Sources */, F4891A1621FC738800E65424 /* SPUITextFieldExtenshion.swift in Sources */, F4891A1F21FC738800E65424 /* SPStrideableExtension.swift in Sources */, F48919EB21FC738800E65424 /* SPCollectionViewLayout.swift in Sources */, diff --git a/Example/stork-controller.xcodeproj/project.xcworkspace/xcuserdata/ivanvorobei.xcuserdatad/UserInterfaceState.xcuserstate b/Example/stork-controller.xcodeproj/project.xcworkspace/xcuserdata/ivanvorobei.xcuserdatad/UserInterfaceState.xcuserstate index ce4addba44880ac2bd970a477092ac9113a1190c..3b4b35e94870288c0556fd47f95f72e97462760c 100644 GIT binary patch delta 22324 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 UIPresentationController? { @@ -33,6 +34,7 @@ public final class SPStorkTransitioningDelegate: NSObject, UIViewControllerTrans controller.isSwipeToDismissEnabled = self.isSwipeToDismissEnabled controller.isTapAroundToDismissEnabled = self.isTapAroundToDismissEnabled controller.showIndicator = self.showIndicator + controller.indicatorColor = self.indicatorColor controller.customHeight = self.customHeight controller.transitioningDelegate = self return controller diff --git a/README.md b/README.md index 756ff8c..d7be131 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,11 @@ transitionDelegate.isTapAroundToDismissEnabled = true transitionDelegate.showIndicator = true ``` +- Parameter `indicatorColor` for customize color of arrow. Default is `gray`: +```swift +transitionDelegate.indicatorColor = UIColor.white +``` + - Parameter `customHeight` sets custom height for modal controller. Default is `nil`: ```swift transitionDelegate.customHeight = 350 diff --git a/SPStorkController.podspec b/SPStorkController.podspec index e6e16fc..bebe02f 100644 --- a/SPStorkController.podspec +++ b/SPStorkController.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "SPStorkController" - s.version = "1.2.1" + s.version = "1.2.2" s.summary = "Modal controller as mail or Apple music application" s.homepage = "https://github.com/IvanVorobei/SPStorkController" s.source = { :git => "https://github.com/IvanVorobei/SPStorkController.git", :tag => s.version } diff --git a/Source/SPStorkController/SPStorkIndicatorView.swift b/Source/SPStorkController/SPStorkIndicatorView.swift index ee503fe..81fbdfc 100644 --- a/Source/SPStorkController/SPStorkIndicatorView.swift +++ b/Source/SPStorkController/SPStorkIndicatorView.swift @@ -42,6 +42,13 @@ class SPStorkIndicatorView: UIView { } } + var color: UIColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) { + didSet { + self.leftView.backgroundColor = self.color + self.rightView.backgroundColor = self.color + } + } + private var leftView: UIView = UIView() private var rightView: UIView = UIView() @@ -50,8 +57,7 @@ class SPStorkIndicatorView: UIView { self.backgroundColor = UIColor.clear self.addSubview(self.leftView) self.addSubview(self.rightView) - self.leftView.backgroundColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) - self.rightView.backgroundColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) + self.color = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) } required init?(coder aDecoder: NSCoder) { diff --git a/Source/SPStorkController/SPStorkPresentationController.swift b/Source/SPStorkController/SPStorkPresentationController.swift index 80411fc..08ae706 100644 --- a/Source/SPStorkController/SPStorkPresentationController.swift +++ b/Source/SPStorkController/SPStorkPresentationController.swift @@ -26,6 +26,7 @@ class SPStorkPresentationController: UIPresentationController, UIGestureRecogniz var isSwipeToDismissEnabled: Bool = true var isTapAroundToDismissEnabled: Bool = true var showIndicator: Bool = true + var indicatorColor: UIColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) var customHeight: CGFloat? = nil var transitioningDelegate: SPStorkTransitioningDelegate? @@ -82,6 +83,7 @@ class SPStorkPresentationController: UIPresentationController, UIGestureRecogniz guard let containerView = self.containerView, let presentedView = self.presentedView, let window = containerView.window else { return } if self.showIndicator { + self.indicatorView.color = self.indicatorColor presentedView.addSubview(self.indicatorView) } self.updateLayoutIndicator() @@ -268,6 +270,8 @@ extension SPStorkPresentationController { self.workGester = true self.indicatorView.style = .line self.presentingViewController.view.layer.removeAllAnimations() + self.presentingViewController.view.endEditing(true) + self.presentedViewController.view.endEditing(true) gestureRecognizer.setTranslation(CGPoint(x: 0, y: 0), in: containerView) case .changed: self.workGester = true diff --git a/Source/SPStorkController/SPStorkTransitioningDelegate.swift b/Source/SPStorkController/SPStorkTransitioningDelegate.swift index 5c378bc..51a68ef 100644 --- a/Source/SPStorkController/SPStorkTransitioningDelegate.swift +++ b/Source/SPStorkController/SPStorkTransitioningDelegate.swift @@ -26,6 +26,7 @@ public final class SPStorkTransitioningDelegate: NSObject, UIViewControllerTrans public var isSwipeToDismissEnabled: Bool = true public var isTapAroundToDismissEnabled: Bool = true public var showIndicator: Bool = true + public var indicatorColor: UIColor = UIColor.init(red: 202/255, green: 201/255, blue: 207/255, alpha: 1) public var customHeight: CGFloat? = nil public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? { @@ -33,6 +34,7 @@ public final class SPStorkTransitioningDelegate: NSObject, UIViewControllerTrans controller.isSwipeToDismissEnabled = self.isSwipeToDismissEnabled controller.isTapAroundToDismissEnabled = self.isTapAroundToDismissEnabled controller.showIndicator = self.showIndicator + controller.indicatorColor = self.indicatorColor controller.customHeight = self.customHeight controller.transitioningDelegate = self return controller