From 8ad645d1885f5d9d6f35d58a5edc572cddf1d646 Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Sun, 17 Jun 2018 08:16:25 +0200 Subject: [PATCH 01/12] fixed enless loop cuased by AVSystemController_SystemVolumeDidChangeNotification when pressing cancel in the library --- .../project.pbxproj | 6 ++--- .../Utilities/VolumeControl.swift | 25 +++++++++++++------ 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/ALCameraViewController.xcodeproj/project.pbxproj b/ALCameraViewController.xcodeproj/project.pbxproj index 720f06f0..2da5210e 100644 --- a/ALCameraViewController.xcodeproj/project.pbxproj +++ b/ALCameraViewController.xcodeproj/project.pbxproj @@ -283,7 +283,7 @@ }; FAF0583E1B31618D008E5592 = { CreatedOnToolsVersion = 6.3.2; - DevelopmentTeam = 2466624KEK; + DevelopmentTeam = W6JQF96JBP; LastSwiftMigration = 0900; ProvisioningStyle = Automatic; }; @@ -548,7 +548,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = 2466624KEK; + DEVELOPMENT_TEAM = W6JQF96JBP; INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -564,7 +564,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = 2466624KEK; + DEVELOPMENT_TEAM = W6JQF96JBP; INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; diff --git a/ALCameraViewController/Utilities/VolumeControl.swift b/ALCameraViewController/Utilities/VolumeControl.swift index 36172f8a..c833bba6 100644 --- a/ALCameraViewController/Utilities/VolumeControl.swift +++ b/ALCameraViewController/Utilities/VolumeControl.swift @@ -11,7 +11,7 @@ import MediaPlayer typealias VolumeChangeAction = (Float) -> Void -public class VolumeControl { +public class VolumeControl : NSObject { let changeKey = "AVSystemController_SystemVolumeDidChangeNotification" @@ -25,12 +25,15 @@ public class VolumeControl { var onVolumeChange: VolumeChangeAction? init(view: UIView, onVolumeChange: VolumeChangeAction?) { + super.init() self.onVolumeChange = onVolumeChange view.addSubview(volumeView) view.sendSubview(toBack: volumeView) - - try? AVAudioSession.sharedInstance().setActive(true) - NotificationCenter.default.addObserver(self, selector: #selector(volumeChanged), name: NSNotification.Name(rawValue: changeKey), object: nil) + do { + try AVAudioSession.sharedInstance().setActive(true) + NotificationCenter.default.addObserver(self, selector: #selector(volumeChanged), name: NSNotification.Name(rawValue: changeKey), object: nil) + + } catch {} } deinit { @@ -40,10 +43,18 @@ public class VolumeControl { volumeView.removeFromSuperview() } - @objc func volumeChanged() { - guard let slider = volumeView.subviews.filter({ $0 is UISlider }).first as? UISlider else { return } + @objc func volumeChanged(notif: Notification) { + guard + let reason = notif.userInfo?["AVSystemController_AudioVolumeChangeReasonNotificationParameter"] as? String, + reason == "ExplicitVolumeChange" else { + return + } let volume = AVAudioSession.sharedInstance().outputVolume - slider.setValue(volume, animated: false) + let slider = volumeView.subviews.filter({ $0 is UISlider }).first as? UISlider + slider?.setValue(volume, animated: false) onVolumeChange?(volume) } + + } + From c823ae0a42602864d5e49f4c8a1f16d0e4d57d6e Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Sun, 17 Jun 2018 08:34:12 +0200 Subject: [PATCH 02/12] bumped version to 3.0.4 --- .../xcshareddata/IDEWorkspaceChecks.plist | 8 ++++++++ CameraViewController/Info.plist | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/CameraViewController/Info.plist b/CameraViewController/Info.plist index 737e8c48..750bf362 100644 --- a/CameraViewController/Info.plist +++ b/CameraViewController/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.8 + 3.0.4 CFBundleSignature ???? CFBundleVersion From 1ce882c827e0c077b0a8951744d570f1bc753f39 Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Sun, 17 Jun 2018 08:53:41 +0200 Subject: [PATCH 03/12] put dev team back on original entries --- ALCameraViewController.xcodeproj/project.pbxproj | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ALCameraViewController.xcodeproj/project.pbxproj b/ALCameraViewController.xcodeproj/project.pbxproj index 2da5210e..720f06f0 100644 --- a/ALCameraViewController.xcodeproj/project.pbxproj +++ b/ALCameraViewController.xcodeproj/project.pbxproj @@ -283,7 +283,7 @@ }; FAF0583E1B31618D008E5592 = { CreatedOnToolsVersion = 6.3.2; - DevelopmentTeam = W6JQF96JBP; + DevelopmentTeam = 2466624KEK; LastSwiftMigration = 0900; ProvisioningStyle = Automatic; }; @@ -548,7 +548,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = W6JQF96JBP; + DEVELOPMENT_TEAM = 2466624KEK; INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -564,7 +564,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = W6JQF96JBP; + DEVELOPMENT_TEAM = 2466624KEK; INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; From c040b1e4247ab1140a527b05377813ebdf1c314d Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Thu, 1 Nov 2018 15:23:40 +0100 Subject: [PATCH 04/12] renamed strings label "error.cant-fetch-photo" to "error.cant_fetch_photo" so its compatible inside Android strings files --- ALCameraViewController/CameraView.strings | 4 ++-- ALCameraViewController/Utilities/SingleImageFetcher.swift | 4 ++-- ALCameraViewController/Utilities/SingleImageSaver.swift | 2 +- .../ViewController/ConfirmViewController.swift | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ALCameraViewController/CameraView.strings b/ALCameraViewController/CameraView.strings index cd6d136f..64e60966 100644 --- a/ALCameraViewController/CameraView.strings +++ b/ALCameraViewController/CameraView.strings @@ -14,5 +14,5 @@ "permissions.settings" = "Settings"; -"error.cant-fetch-photo" = "Unable to fetch image"; -"error.cant-fetch-photo.description" = "Please check your network settings"; \ No newline at end of file +"error.cant_fetch_photo" = "Unable to fetch image"; +"error.cant_fetch_photo.description" = "Please check your network settings"; diff --git a/ALCameraViewController/Utilities/SingleImageFetcher.swift b/ALCameraViewController/Utilities/SingleImageFetcher.swift index dbbb9c6a..f741bdd9 100644 --- a/ALCameraViewController/Utilities/SingleImageFetcher.swift +++ b/ALCameraViewController/Utilities/SingleImageFetcher.swift @@ -63,7 +63,7 @@ public class SingleImageFetcher { private func _fetch() { guard let asset = asset else { - let error = errorWithKey("error.cant-fetch-photo", domain: errorDomain) + let error = errorWithKey("error.cant_fetch_photo", domain: errorDomain) failure?(error) return } @@ -87,7 +87,7 @@ public class SingleImageFetcher { if let image = image { self.success?(image) } else { - let error = errorWithKey("error.cant-fetch-photo", domain: self.errorDomain) + let error = errorWithKey("error.cant_fetch_photo", domain: self.errorDomain) self.failure?(error) } } diff --git a/ALCameraViewController/Utilities/SingleImageSaver.swift b/ALCameraViewController/Utilities/SingleImageSaver.swift index 652e1925..38d7e313 100644 --- a/ALCameraViewController/Utilities/SingleImageSaver.swift +++ b/ALCameraViewController/Utilities/SingleImageSaver.swift @@ -88,7 +88,7 @@ public class SingleImageSaver { } private func invokeFailure() { - let error = errorWithKey("error.cant-fetch-photo", domain: errorDomain) + let error = errorWithKey("error.cant_fetch_photo", domain: errorDomain) failure?(error) } } diff --git a/ALCameraViewController/ViewController/ConfirmViewController.swift b/ALCameraViewController/ViewController/ConfirmViewController.swift index 5c7fb257..0fb961e2 100644 --- a/ALCameraViewController/ViewController/ConfirmViewController.swift +++ b/ALCameraViewController/ViewController/ConfirmViewController.swift @@ -299,7 +299,7 @@ public class ConfirmViewController: UIViewController, UIScrollViewDelegate { func showNoImageScreen(_ error: NSError) { let permissionsView = PermissionsView(frame: view.bounds) - let desc = localizedString("error.cant-fetch-photo.description") + let desc = localizedString("error.cant_fetch_photo.description") permissionsView.configureInView(view, title: error.localizedDescription, description: desc, completion: { [weak self] in self?.cancel() }) } From 5cf9d22dfe29d87c90dc89f5c507ba2cd14d52ff Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Tue, 17 Mar 2020 08:15:03 +0100 Subject: [PATCH 05/12] v10.0.0 * swift 5 conversion * made it v10.0.0 so there can be no confusion with the org ALCameraController versioning * fixed bug that after cancel the camera would not show up immediatly --- .../project.pbxproj | 20 ++- .../xcschemes/CameraViewController.xcscheme | 8 +- .../Utilities/CameraShot.swift | 2 + .../Utilities/PhotoLibraryAuthorizer.swift | 4 + .../Utilities/Utilities.swift | 6 +- .../Utilities/VolumeControl.swift | 2 +- .../ViewController/CameraViewController.swift | 165 +++++++++--------- .../CameraViewControllerConstraint.swift | 32 ++-- .../ConfirmViewController.swift | 4 +- .../PhotoLibraryViewController.swift | 4 +- ALCameraViewController/Views/CameraView.swift | 4 +- .../Views/PermissionsView.swift | 12 +- CameraViewController/Info.plist | 2 +- 13 files changed, 141 insertions(+), 124 deletions(-) diff --git a/ALCameraViewController.xcodeproj/project.pbxproj b/ALCameraViewController.xcodeproj/project.pbxproj index 720f06f0..f717b163 100644 --- a/ALCameraViewController.xcodeproj/project.pbxproj +++ b/ALCameraViewController.xcodeproj/project.pbxproj @@ -274,12 +274,12 @@ attributes = { LastSwiftMigration = 0700; LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0900; + LastUpgradeCheck = 1130; ORGANIZATIONNAME = zero; TargetAttributes = { C4829FFA1CAEB16C00541D08 = { CreatedOnToolsVersion = 7.3; - LastSwiftMigration = 0900; + LastSwiftMigration = 1130; }; FAF0583E1B31618D008E5592 = { CreatedOnToolsVersion = 6.3.2; @@ -291,7 +291,7 @@ }; buildConfigurationList = FAF0583A1B31618D008E5592 /* Build configuration list for PBXProject "ALCameraViewController" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -408,11 +408,12 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MARKETING_VERSION = 10.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -432,11 +433,12 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MARKETING_VERSION = 10.0.0; PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -446,6 +448,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -454,12 +457,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -492,6 +497,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -500,6 +506,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -508,12 +515,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -538,6 +547,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; }; diff --git a/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme b/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme index f8654c4d..0fdcfe21 100644 --- a/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme +++ b/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme @@ -1,6 +1,6 @@ - - - - NSError { return error } -internal func normalizedRect(_ rect: CGRect, orientation: UIImageOrientation) -> CGRect { +internal func normalizedRect(_ rect: CGRect, orientation: UIImage.Orientation) -> CGRect { let normalizedX = rect.origin.x let normalizedY = rect.origin.y @@ -86,6 +86,8 @@ internal func normalizedRect(_ rect: CGRect, orientation: UIImageOrientation) -> normalizedRect = CGRect(x: 1-normalizedY-normalizedHeight, y: normalizedX, width: normalizedHeight, height: normalizedWidth) case .right, .rightMirrored: normalizedRect = CGRect(x: normalizedY, y: 1-normalizedX-normalizedWidth, width: normalizedHeight, height: normalizedWidth) + @unknown default: + normalizedRect = CGRect(x: normalizedX, y: normalizedY, width: normalizedWidth, height: normalizedHeight) } return normalizedRect @@ -100,6 +102,8 @@ internal func flashImage(_ mode: AVCaptureDevice.FlashMode) -> String { image = "flashOnIcon" case .off: image = "flashOffIcon" + @unknown default: + image = "flashAutoIcon" } return image } diff --git a/ALCameraViewController/Utilities/VolumeControl.swift b/ALCameraViewController/Utilities/VolumeControl.swift index c833bba6..ff503aae 100644 --- a/ALCameraViewController/Utilities/VolumeControl.swift +++ b/ALCameraViewController/Utilities/VolumeControl.swift @@ -28,7 +28,7 @@ public class VolumeControl : NSObject { super.init() self.onVolumeChange = onVolumeChange view.addSubview(volumeView) - view.sendSubview(toBack: volumeView) + view.sendSubviewToBack(volumeView) do { try AVAudioSession.sharedInstance().setActive(true) NotificationCenter.default.addObserver(self, selector: #selector(volumeChanged), name: NSNotification.Name(rawValue: changeKey), object: nil) diff --git a/ALCameraViewController/ViewController/CameraViewController.swift b/ALCameraViewController/ViewController/CameraViewController.swift index d9e07099..6f224634 100644 --- a/ALCameraViewController/ViewController/CameraViewController.swift +++ b/ALCameraViewController/ViewController/CameraViewController.swift @@ -14,14 +14,14 @@ public typealias CameraViewCompletion = (UIImage?, PHAsset?) -> Void public extension CameraViewController { /// Provides an image picker wrapped inside a UINavigationController instance - public class func imagePickerViewController(croppingParameters: CroppingParameters, completion: @escaping CameraViewCompletion) -> UINavigationController { + class func imagePickerViewController(croppingParameters: CroppingParameters, completion: @escaping CameraViewCompletion) -> UINavigationController { let imagePicker = PhotoLibraryViewController() let navigationController = UINavigationController(rootViewController: imagePicker) navigationController.navigationBar.barTintColor = UIColor.black navigationController.navigationBar.barStyle = UIBarStyle.black navigationController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve - + imagePicker.onSelectionComplete = { [weak imagePicker] asset in if let asset = asset { let confirmController = ConfirmViewController(asset: asset, croppingParameters: croppingParameters) @@ -56,7 +56,7 @@ open class CameraViewController: UIViewController { var animationDuration: TimeInterval = 0.5 var animationSpring: CGFloat = 0.5 - var rotateAnimation: UIViewAnimationOptions = .curveLinear + var rotateAnimation: UIView.AnimationOptions = .curveLinear var cameraButtonEdgeConstraint: NSLayoutConstraint? var cameraButtonGravityConstraint: NSLayoutConstraint? @@ -89,7 +89,7 @@ open class CameraViewController: UIViewController { cameraView.translatesAutoresizingMaskIntoConstraints = false return cameraView }() - + let cameraOverlay : CropOverlay = { let cameraOverlay = CropOverlay() cameraOverlay.translatesAutoresizingMaskIntoConstraints = false @@ -156,15 +156,15 @@ open class CameraViewController: UIViewController { view.translatesAutoresizingMaskIntoConstraints = false return view }() - - private let allowsLibraryAccess: Bool - + + private let allowsLibraryAccess: Bool + public init(croppingParameters: CroppingParameters = CroppingParameters(), allowsLibraryAccess: Bool = true, allowsSwapCameraOrientation: Bool = true, allowVolumeButtonCapture: Bool = true, completion: @escaping CameraViewCompletion) { - + self.croppingParameters = croppingParameters self.allowsLibraryAccess = allowsLibraryAccess self.allowVolumeButtonCapture = allowVolumeButtonCapture @@ -174,14 +174,14 @@ open class CameraViewController: UIViewController { cameraOverlay.isUserInteractionEnabled = false libraryButton.isEnabled = allowsLibraryAccess libraryButton.isHidden = !allowsLibraryAccess - swapButton.isEnabled = allowsSwapCameraOrientation - swapButton.isHidden = !allowsSwapCameraOrientation + swapButton.isEnabled = allowsSwapCameraOrientation + swapButton.isHidden = !allowsSwapCameraOrientation } - + required public init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } - + open override var prefersStatusBarHidden: Bool { return true } @@ -199,11 +199,11 @@ open class CameraViewController: UIViewController { super.loadView() view.backgroundColor = UIColor.black [cameraView, - cameraOverlay, - cameraButton, - closeButton, - flashButton, - containerSwapLibraryButton].forEach({ view.addSubview($0) }) + cameraOverlay, + cameraButton, + closeButton, + flashButton, + containerSwapLibraryButton].forEach({ view.addSubview($0) }) [swapButton, libraryButton].forEach({ containerSwapLibraryButton.addSubview($0) }) view.setNeedsUpdateConstraints() } @@ -217,7 +217,7 @@ open class CameraViewController: UIViewController { * device is rotating, based on the device orientation. */ override open func updateViewConstraints() { - + if !didUpdateViews { configCameraViewConstraints() didUpdateViews = true @@ -240,7 +240,7 @@ open class CameraViewController: UIViewController { removeSwapButtonConstraints() configSwapButtonEdgeConstraint(statusBarOrientation) configSwapButtonGravityConstraint(portrait) - + removeLibraryButtonConstraints() configLibraryEdgeButtonConstraint(statusBarOrientation) configLibraryGravityButtonConstraint(portrait) @@ -276,7 +276,7 @@ open class CameraViewController: UIViewController { cameraView.configureFocus() cameraView.configureZoom() } - + /** * Start the session of the camera. */ @@ -285,7 +285,7 @@ open class CameraViewController: UIViewController { cameraView.startSession() addCameraObserver() addRotateObserver() - + if allowVolumeButtonCapture { setupVolumeControl() } @@ -301,24 +301,24 @@ open class CameraViewController: UIViewController { notifyCameraReady() } } - + open override func viewWillDisappear(_ animated: Bool) { super.viewWillDisappear(animated) NotificationCenter.default.removeObserver(self) volumeControl = nil } - + /** * This method will disable the rotation of the */ override open func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) { super.viewWillTransition(to: size, with: coordinator) - + lastInterfaceOrientation = UIApplication.shared.statusBarOrientation if animationRunning { return } - + CATransaction.begin() CATransaction.setDisableActions(true) coordinator.animate(alongsideTransition: { [weak self] animation in @@ -349,7 +349,7 @@ open class CameraViewController: UIViewController { NotificationCenter.default.addObserver( self, selector: #selector(rotateCameraView), - name: NSNotification.Name.UIDeviceOrientationDidChange, + name: UIDevice.orientationDidChangeNotification, object: nil) } @@ -387,9 +387,9 @@ open class CameraViewController: UIViewController { */ private func toggleButtons(enabled: Bool) { [cameraButton, - closeButton, - swapButton, - libraryButton].forEach({ $0.isEnabled = enabled }) + closeButton, + swapButton, + libraryButton].forEach({ $0.isEnabled = enabled }) } @objc func rotateCameraView() { @@ -407,7 +407,7 @@ open class CameraViewController: UIViewController { lastInterfaceOrientation!, newOrientation: actualInterfaceOrientation))) setTransform(transform: lastTransform) } - + let transform = CGAffineTransform(rotationAngle: 0) animationRunning = true @@ -415,14 +415,14 @@ open class CameraViewController: UIViewController { * Dispatch delay to avoid any conflict between the CATransaction of rotation of the screen * and CATransaction of animation of buttons. */ - + let duration = animationDuration let spring = animationSpring let options = rotateAnimation - + let time: DispatchTime = DispatchTime.now() + Double(1 * UInt64(NSEC_PER_SEC)/10) DispatchQueue.main.asyncAfter(deadline: time) { [weak self] in - + guard let _ = self else { return } @@ -438,7 +438,7 @@ open class CameraViewController: UIViewController { initialSpringVelocity: 0, options: options, animations: { [weak self] in - self?.setTransform(transform: transform) + self?.setTransform(transform: transform) }, completion: { [weak self] _ in self?.animationRunning = false }) @@ -500,7 +500,7 @@ open class CameraViewController: UIViewController { internal func capturePhoto() { guard let output = cameraView.imageOutput, let connection = output.connection(with: AVMediaType.video) else { - return + return } if connection.isEnabled { @@ -518,13 +518,13 @@ open class CameraViewController: UIViewController { internal func saveImage(image: UIImage) { let spinner = showSpinner() cameraView.preview.isHidden = true - - if allowsLibraryAccess { - _ = SingleImageSaver() - .setImage(image) - .onSuccess { [weak self] asset in - self?.layoutCameraResult(asset: asset) - self?.hideSpinner(spinner) + + if allowsLibraryAccess { + _ = SingleImageSaver() + .setImage(image) + .onSuccess { [weak self] asset in + self?.layoutCameraResult(asset: asset) + self?.hideSpinner(spinner) } .onFailure { [weak self] error in self?.toggleButtons(enabled: true) @@ -533,12 +533,12 @@ open class CameraViewController: UIViewController { self?.hideSpinner(spinner) } .save() - } else { - layoutCameraResult(uiImage: image) - hideSpinner(spinner) - } + } else { + layoutCameraResult(uiImage: image) + hideSpinner(spinner) + } } - + internal func close() { onCompletion?(nil, nil) onCompletion = nil @@ -547,13 +547,14 @@ open class CameraViewController: UIViewController { internal func showLibrary() { let imagePicker = CameraViewController.imagePickerViewController(croppingParameters: croppingParameters) { [weak self] image, asset in defer { + self?.cameraView.startSession() self?.dismiss(animated: true, completion: nil) } - + guard let image = image, let asset = asset else { return } - + self?.onCompletion?(image, asset) } @@ -568,7 +569,7 @@ open class CameraViewController: UIViewController { guard let device = cameraView.device else { return } - + let image = UIImage(named: flashImage(device.flashMode), in: CameraGlobals.shared.bundle, compatibleWith: nil) @@ -580,63 +581,65 @@ open class CameraViewController: UIViewController { cameraView.swapCameraInput() flashButton.isHidden = cameraView.currentPosition == AVCaptureDevice.Position.front } - - internal func layoutCameraResult(uiImage: UIImage) { - cameraView.stopSession() - startConfirmController(uiImage: uiImage) - toggleButtons(enabled: true) - } - + + internal func layoutCameraResult(uiImage: UIImage) { + cameraView.stopSession() + startConfirmController(uiImage: uiImage) + toggleButtons(enabled: true) + } + internal func layoutCameraResult(asset: PHAsset) { cameraView.stopSession() startConfirmController(asset: asset) toggleButtons(enabled: true) } - - private func startConfirmController(uiImage: UIImage) { - let confirmViewController = ConfirmViewController(image: uiImage, croppingParameters: croppingParameters) - confirmViewController.onComplete = { [weak self] image, asset in - defer { - self?.dismiss(animated: true, completion: nil) - } - - guard let image = image else { - return - } - - self?.onCompletion?(image, asset) - self?.onCompletion = nil - } - confirmViewController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve - present(confirmViewController, animated: true, completion: nil) - } - + + private func startConfirmController(uiImage: UIImage) { + let confirmViewController = ConfirmViewController(image: uiImage, croppingParameters: croppingParameters) + confirmViewController.onComplete = { [weak self] image, asset in + defer { + self?.cameraView.startSession() + self?.dismiss(animated: true, completion: nil) + } + + guard let image = image else { + return + } + + self?.onCompletion?(image, asset) + self?.onCompletion = nil + } + confirmViewController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve + present(confirmViewController, animated: true, completion: nil) + } + private func startConfirmController(asset: PHAsset) { let confirmViewController = ConfirmViewController(asset: asset, croppingParameters: croppingParameters) confirmViewController.onComplete = { [weak self] image, asset in defer { + self?.cameraView.startSession() self?.dismiss(animated: true, completion: nil) } - + guard let image = image, let asset = asset else { return } - + self?.onCompletion?(image, asset) self?.onCompletion = nil } confirmViewController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve present(confirmViewController, animated: true, completion: nil) } - + private func showSpinner() -> UIActivityIndicatorView { let spinner = UIActivityIndicatorView() - spinner.activityIndicatorViewStyle = .white + spinner.style = .white spinner.center = view.center spinner.startAnimating() view.addSubview(spinner) - view.bringSubview(toFront: spinner) + view.bringSubviewToFront(spinner) return spinner } diff --git a/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift b/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift index 37e518c9..7998f038 100644 --- a/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift +++ b/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift @@ -44,7 +44,7 @@ extension CameraViewController { func configCameraButtonEdgeConstraint(_ statusBarOrientation: UIInterfaceOrientation) { view.autoRemoveConstraint(cameraButtonEdgeConstraint) - let attribute : NSLayoutAttribute = { + let attribute : NSLayoutConstraint.Attribute = { switch statusBarOrientation { case .portrait: return .bottomMargin case .landscapeRight: return .rightMargin @@ -72,7 +72,7 @@ extension CameraViewController { */ func configCameraButtonGravityConstraint(_ portrait: Bool) { view.autoRemoveConstraint(cameraButtonGravityConstraint) - let attribute : NSLayoutAttribute = portrait ? .centerX : .centerY + let attribute : NSLayoutConstraint.Attribute = portrait ? .centerX : .centerY cameraButtonGravityConstraint = NSLayoutConstraint( item: cameraButton, attribute: attribute, @@ -100,8 +100,8 @@ extension CameraViewController { */ func configContainerEdgeConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attributeOne : NSLayoutAttribute - let attributeTwo : NSLayoutAttribute + let attributeOne : NSLayoutConstraint.Attribute + let attributeTwo : NSLayoutConstraint.Attribute switch statusBarOrientation { case .portrait: @@ -149,7 +149,7 @@ extension CameraViewController { * orientation of the device. */ func configContainerGravityConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attributeCenter : NSLayoutAttribute = statusBarOrientation.isPortrait ? .centerY : .centerX + let attributeCenter : NSLayoutConstraint.Attribute = statusBarOrientation.isPortrait ? .centerY : .centerX containerButtonsGravityConstraint = NSLayoutConstraint( item: containerSwapLibraryButton, attribute: attributeCenter, @@ -179,8 +179,8 @@ extension CameraViewController { */ func configSwapButtonEdgeConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attributeOne : NSLayoutAttribute - let attributeTwo : NSLayoutAttribute + let attributeOne : NSLayoutConstraint.Attribute + let attributeTwo : NSLayoutConstraint.Attribute switch statusBarOrientation { case .portrait: @@ -249,7 +249,7 @@ extension CameraViewController { */ func configCloseButtonEdgeConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attribute : NSLayoutAttribute = { + let attribute : NSLayoutConstraint.Attribute = { switch statusBarOrientation { case .portrait: return .left case .landscapeRight, .landscapeLeft: return .centerX @@ -278,7 +278,7 @@ extension CameraViewController { */ func configCloseButtonGravityConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attribute : NSLayoutAttribute + let attribute : NSLayoutConstraint.Attribute let constant : CGFloat switch statusBarOrientation { @@ -331,8 +331,8 @@ extension CameraViewController { */ func configLibraryEdgeButtonConstraint(_ statusBarOrientation : UIInterfaceOrientation) { - let attributeOne : NSLayoutAttribute - let attributeTwo : NSLayoutAttribute + let attributeOne : NSLayoutConstraint.Attribute + let attributeTwo : NSLayoutConstraint.Attribute switch statusBarOrientation { case .portrait: @@ -401,7 +401,7 @@ extension CameraViewController { view.autoRemoveConstraint(flashButtonEdgeConstraint) let constraintRight = statusBarOrientation == .portrait || statusBarOrientation == .landscapeRight - let attribute : NSLayoutAttribute = constraintRight ? .topMargin : .bottomMargin + let attribute : NSLayoutConstraint.Attribute = constraintRight ? .topMargin : .bottomMargin flashButtonEdgeConstraint = NSLayoutConstraint( item: flashButton, @@ -425,7 +425,7 @@ extension CameraViewController { view.autoRemoveConstraint(flashButtonGravityConstraint) let constraintRight = statusBarOrientation == .portrait || statusBarOrientation == .landscapeLeft - let attribute : NSLayoutAttribute = constraintRight ? .right : .left + let attribute : NSLayoutConstraint.Attribute = constraintRight ? .right : .left flashButtonGravityConstraint = NSLayoutConstraint( item: flashButton, @@ -466,7 +466,7 @@ extension CameraViewController { */ func configCameraOverlayCenterConstraint(_ portrait: Bool) { view.autoRemoveConstraint(cameraOverlayCenterConstraint) - let attribute : NSLayoutAttribute = portrait ? .centerY : .centerX + let attribute : NSLayoutConstraint.Attribute = portrait ? .centerY : .centerX cameraOverlayCenterConstraint = NSLayoutConstraint( item: cameraOverlay, attribute: attribute, @@ -494,7 +494,7 @@ extension CameraViewController { the view will be pinned. */ func configCameraOverlayEdgeOneContraint(_ portrait: Bool, padding: CGFloat) { - let attribute : NSLayoutAttribute = portrait ? .left : .bottom + let attribute : NSLayoutConstraint.Attribute = portrait ? .left : .bottom cameraOverlayEdgeOneConstraint = NSLayoutConstraint( item: cameraOverlay, attribute: attribute, @@ -513,7 +513,7 @@ extension CameraViewController { the view will be pinned. */ func configCameraOverlayEdgeTwoConstraint(_ portrait: Bool, padding: CGFloat) { - let attributeTwo : NSLayoutAttribute = portrait ? .right : .top + let attributeTwo : NSLayoutConstraint.Attribute = portrait ? .right : .top cameraOverlayEdgeTwoConstraint = NSLayoutConstraint( item: cameraOverlay, attribute: attributeTwo, diff --git a/ALCameraViewController/ViewController/ConfirmViewController.swift b/ALCameraViewController/ViewController/ConfirmViewController.swift index 0fb961e2..32ef8cbb 100644 --- a/ALCameraViewController/ViewController/ConfirmViewController.swift +++ b/ALCameraViewController/ViewController/ConfirmViewController.swift @@ -273,12 +273,12 @@ public class ConfirmViewController: UIViewController, UIScrollViewDelegate { func showSpinner() -> UIActivityIndicatorView { let spinner = UIActivityIndicatorView() - spinner.activityIndicatorViewStyle = .white + spinner.style = .white spinner.center = view.center spinner.startAnimating() view.addSubview(spinner) - view.bringSubview(toFront: spinner) + view.bringSubviewToFront(spinner) return spinner } diff --git a/ALCameraViewController/ViewController/PhotoLibraryViewController.swift b/ALCameraViewController/ViewController/PhotoLibraryViewController.swift index 8bdc9cd6..28c06f50 100644 --- a/ALCameraViewController/ViewController/PhotoLibraryViewController.swift +++ b/ALCameraViewController/ViewController/PhotoLibraryViewController.swift @@ -40,10 +40,10 @@ public class PhotoLibraryViewController: UIViewController { setNeedsStatusBarAppearanceUpdate() - let buttonImage = UIImage(named: "libraryCancel", in: CameraGlobals.shared.bundle, compatibleWith: nil)?.withRenderingMode(UIImageRenderingMode.alwaysOriginal) + let buttonImage = UIImage(named: "libraryCancel", in: CameraGlobals.shared.bundle, compatibleWith: nil)?.withRenderingMode(UIImage.RenderingMode.alwaysOriginal) navigationItem.leftBarButtonItem = UIBarButtonItem(image: buttonImage, - style: UIBarButtonItemStyle.plain, + style: UIBarButtonItem.Style.plain, target: self, action: #selector(dismissLibrary)) diff --git a/ALCameraViewController/Views/CameraView.swift b/ALCameraViewController/Views/CameraView.swift index b008924b..771d378c 100644 --- a/ALCameraViewController/Views/CameraView.swift +++ b/ALCameraViewController/Views/CameraView.swift @@ -119,9 +119,9 @@ public class CameraView: UIView { focusView.alpha = 0 focusView.transform = CGAffineTransform(scaleX: 1.2, y: 1.2) - bringSubview(toFront: focusView) + bringSubviewToFront(focusView) - UIView.animateKeyframes(withDuration: 1.5, delay: 0, options: UIViewKeyframeAnimationOptions(), animations: { + UIView.animateKeyframes(withDuration: 1.5, delay: 0, options: UIView.KeyframeAnimationOptions(), animations: { UIView.addKeyframe(withRelativeStartTime: 0, relativeDuration: 0.15, animations: { [weak self] in self?.focusView.alpha = 1 diff --git a/ALCameraViewController/Views/PermissionsView.swift b/ALCameraViewController/Views/PermissionsView.swift index d814558b..4e30dab3 100644 --- a/ALCameraViewController/Views/PermissionsView.swift +++ b/ALCameraViewController/Views/PermissionsView.swift @@ -39,7 +39,7 @@ internal class PermissionsView: UIView { descriptionLabel.text = description closeButton.action = completion - closeButton.setImage(UIImage(named: "retakeButton", in: CameraGlobals.shared.bundle, compatibleWith: nil), for: UIControlState()) + closeButton.setImage(UIImage(named: "retakeButton", in: CameraGlobals.shared.bundle, compatibleWith: nil), for: UIControl.State()) closeButton.sizeToFit() let size = view.frame.size @@ -69,13 +69,13 @@ internal class PermissionsView: UIView { let icon = UIImage(named: "permissionsIcon", in: CameraGlobals.shared.bundle, compatibleWith: nil)! iconView.image = icon - settingsButton.contentEdgeInsets = UIEdgeInsetsMake(6, 12, 6, 12) - settingsButton.setTitle(localizedString("permissions.settings"), for: UIControlState()) - settingsButton.setTitleColor(UIColor.white, for: UIControlState()) + settingsButton.contentEdgeInsets = UIEdgeInsets.init(top: 6, left: 12, bottom: 6, right: 12) + settingsButton.setTitle(localizedString("permissions.settings"), for: UIControl.State()) + settingsButton.setTitleColor(UIColor.white, for: UIControl.State()) settingsButton.layer.cornerRadius = 4 settingsButton.titleLabel?.font = UIFont(name: "AppleSDGothicNeo-Regular", size: 14) settingsButton.backgroundColor = UIColor(red: 52.0/255.0, green: 183.0/255.0, blue: 250.0/255.0, alpha: 1) - settingsButton.addTarget(self, action: #selector(PermissionsView.openSettings), for: UIControlEvents.touchUpInside) + settingsButton.addTarget(self, action: #selector(PermissionsView.openSettings), for: UIControl.Event.touchUpInside) addSubview(iconView) addSubview(titleLabel) @@ -84,7 +84,7 @@ internal class PermissionsView: UIView { } @objc func openSettings() { - if let appSettings = URL(string: UIApplicationOpenSettingsURLString) { + if let appSettings = URL(string: UIApplication.openSettingsURLString) { UIApplication.shared.openURL(appSettings) } } diff --git a/CameraViewController/Info.plist b/CameraViewController/Info.plist index 750bf362..ca23c84f 100644 --- a/CameraViewController/Info.plist +++ b/CameraViewController/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.0.4 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion From caf0fe3f349706b494298c30f069e95184345e3f Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Tue, 17 Mar 2020 08:24:58 +0100 Subject: [PATCH 06/12] fix to solve card style interface in image picker --- .../ViewController/CameraViewController.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ALCameraViewController/ViewController/CameraViewController.swift b/ALCameraViewController/ViewController/CameraViewController.swift index 6f224634..63abf628 100644 --- a/ALCameraViewController/ViewController/CameraViewController.swift +++ b/ALCameraViewController/ViewController/CameraViewController.swift @@ -557,7 +557,7 @@ open class CameraViewController: UIViewController { self?.onCompletion?(image, asset) } - + imagePicker.modalPresentationStyle = .fullScreen present(imagePicker, animated: true) { [weak self] in self?.cameraView.stopSession() } From d9bf053f171063cfc9329b2de5c88f136067a437 Mon Sep 17 00:00:00 2001 From: Geert Michiels <> Date: Tue, 17 Mar 2020 08:34:19 +0100 Subject: [PATCH 07/12] fixed issues with displayed modal in card view --- ALCameraViewController.xcodeproj/project.pbxproj | 6 ++++-- .../ViewController/CameraViewController.swift | 2 ++ .../ViewController/PhotoLibraryViewController.swift | 2 +- Example/Supporting Files/Info.plist | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ALCameraViewController.xcodeproj/project.pbxproj b/ALCameraViewController.xcodeproj/project.pbxproj index f717b163..b7cccf5c 100644 --- a/ALCameraViewController.xcodeproj/project.pbxproj +++ b/ALCameraViewController.xcodeproj/project.pbxproj @@ -408,7 +408,7 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MARKETING_VERSION = 10.0.0; + MARKETING_VERSION = 10.0.1; PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -433,7 +433,7 @@ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MARKETING_VERSION = 10.0.0; + MARKETING_VERSION = 10.0.1; PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -562,6 +562,7 @@ INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MARKETING_VERSION = 10.0.1; PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_SWIFT3_OBJC_INFERENCE = Default; @@ -578,6 +579,7 @@ INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + MARKETING_VERSION = 10.0.1; PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_SWIFT3_OBJC_INFERENCE = Default; diff --git a/ALCameraViewController/ViewController/CameraViewController.swift b/ALCameraViewController/ViewController/CameraViewController.swift index 63abf628..4fb56c32 100644 --- a/ALCameraViewController/ViewController/CameraViewController.swift +++ b/ALCameraViewController/ViewController/CameraViewController.swift @@ -609,6 +609,7 @@ open class CameraViewController: UIViewController { self?.onCompletion?(image, asset) self?.onCompletion = nil } + confirmViewController.modalPresentationStyle = .fullScreen confirmViewController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve present(confirmViewController, animated: true, completion: nil) } @@ -628,6 +629,7 @@ open class CameraViewController: UIViewController { self?.onCompletion?(image, asset) self?.onCompletion = nil } + confirmViewController.modalPresentationStyle = .fullScreen confirmViewController.modalTransitionStyle = UIModalTransitionStyle.crossDissolve present(confirmViewController, animated: true, completion: nil) } diff --git a/ALCameraViewController/ViewController/PhotoLibraryViewController.swift b/ALCameraViewController/ViewController/PhotoLibraryViewController.swift index 28c06f50..344b6843 100644 --- a/ALCameraViewController/ViewController/PhotoLibraryViewController.swift +++ b/ALCameraViewController/ViewController/PhotoLibraryViewController.swift @@ -16,7 +16,7 @@ internal let defaultItemSpacing: CGFloat = 1 public typealias PhotoLibraryViewSelectionComplete = (PHAsset?) -> Void public class PhotoLibraryViewController: UIViewController { - + internal var assets: PHFetchResult? = nil public var onSelectionComplete: PhotoLibraryViewSelectionComplete? diff --git a/Example/Supporting Files/Info.plist b/Example/Supporting Files/Info.plist index 6d3c94b0..82ed5fb9 100644 --- a/Example/Supporting Files/Info.plist +++ b/Example/Supporting Files/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.0.10 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion From 1ef79efe890fe22e2642e9c28ea98f11c5b5b340 Mon Sep 17 00:00:00 2001 From: Geert Michiels Date: Sat, 30 Jan 2021 12:36:55 +0100 Subject: [PATCH 08/12] converted to swift package manager --- .swift-version | 1 - .../contents.xcworkspacedata | 2 +- .../xcshareddata/IDEWorkspaceChecks.plist | 0 ALCameraViewController.podspec | 14 - .../project.pbxproj | 623 ------------------ .../xcschemes/CameraViewController.xcscheme | 76 --- CameraViewController/CameraViewController.h | 19 - CameraViewController/Info.plist | 26 - Package.swift | 28 + .../CameraView.strings | 0 .../CameraViewAssets.xcassets/Contents.json | 0 .../cameraButton.imageset/Contents.json | 0 .../cameraButton.imageset/cameraButton.png | Bin .../cameraButton.imageset/cameraButton@2x.png | Bin .../cameraButton.imageset/cameraButton@3x.png | Bin .../Contents.json | 0 .../cameraButtonHighlighted.png | Bin .../cameraButtonHighlighted@2x.png | Bin .../cameraButtonHighlighted@3x.png | Bin .../closeButton.imageset/Contents.json | 0 .../closeButton.imageset/closeButton.png | Bin .../closeButton.imageset/closeButton@2x.png | Bin .../closeButton.imageset/closeButton@3x.png | Bin .../confirmButton.imageset/Contents.json | 0 .../confirmButton.imageset/confirmButton.png | Bin .../confirmButton@2x.png | Bin .../confirmButton@3x.png | Bin .../flashAutoIcon.imageset/Contents.json | 0 .../flashAutoIcon.imageset/flashAutoIcon.png | Bin .../flashAutoIcon@2x.png | Bin .../flashAutoIcon@3x.png | Bin .../flashOffIcon.imageset/Contents.json | 0 .../flashOffIcon.imageset/flashOffIcon.png | Bin .../flashOffIcon.imageset/flashOffIcon@2x.png | Bin .../flashOffIcon.imageset/flashOffIcon@3x.png | Bin .../flashOnIcon.imageset/Contents.json | 0 .../flashOnIcon.imageset/flashOnIcon.png | Bin .../flashOnIcon.imageset/flashOnIcon@2x.png | Bin .../flashOnIcon.imageset/flashOnIcon@3x.png | Bin .../libraryButton.imageset/Contents.json | 0 .../libraryButton.imageset/libraryButton.png | Bin .../libraryButton@2x.png | Bin .../libraryButton@3x.png | Bin .../libraryCancel.imageset/Contents.json | 0 .../libraryCancel.imageset/libraryCancel.png | Bin .../libraryCancel@2x.png | Bin .../libraryCancel@3x.png | Bin .../libraryConfirm.imageset/Contents.json | 0 .../libraryConfirm.png | Bin .../libraryConfirm@2x.png | Bin .../libraryConfirm@3x.png | Bin .../permissionsIcon.imageset/Contents.json | 0 .../cameraPermissionsIcon.png | Bin .../cameraPermissionsIcon@2x.png | Bin .../cameraPermissionsIcon@3x.png | Bin .../placeholder.imageset/Contents.json | 0 .../placeholder.imageset/placeholder.png | Bin .../placeholder.imageset/placeholder@2x.png | Bin .../placeholder.imageset/placeholder@3x.png | Bin .../retakeButton.imageset/Contents.json | 0 .../retakeButton.imageset/retakeButton.png | Bin .../retakeButton.imageset/retakeButton@2x.png | Bin .../retakeButton.imageset/retakeButton@3x.png | Bin .../swapButton.imageset/Contents.json | 0 .../swapButton.imageset/swapButton.png | Bin .../swapButton.imageset/swapButton@2x.png | Bin .../swapButton.imageset/swapButton@3x.png | Bin .../Utilities/CameraGlobals.swift | 0 .../Utilities/CameraShot.swift | 0 .../Utilities/CroppingParameters.swift | 0 .../Utilities/ImageFetcher.swift | 0 .../Utilities/PhotoLibraryAuthorizer.swift | 0 .../Utilities/SingleImageFetcher.swift | 0 .../Utilities/SingleImageSaver.swift | 0 .../Utilities/UIButtonExtensions.swift | 0 .../Utilities/UIViewExtensions.swift | 0 .../Utilities/Utilities.swift | 0 .../Utilities/VolumeControl.swift | 0 .../ViewController/CameraViewController.swift | 0 .../CameraViewControllerConstraint.swift | 0 .../ConfirmViewController.swift | 0 .../ViewController/ConfirmViewController.xib | 0 .../PhotoLibraryViewController.swift | 0 .../Views/CameraView.swift | 0 .../Views/CropOverlay.swift | 0 .../Views/ImageCell.swift | 0 .../Views/PermissionsView.swift | 0 87 files changed, 29 insertions(+), 760 deletions(-) delete mode 100644 .swift-version rename {ALCameraViewController.xcodeproj/project.xcworkspace => .swiftpm/xcode/package.xcworkspace}/contents.xcworkspacedata (65%) rename {ALCameraViewController.xcodeproj/project.xcworkspace => .swiftpm/xcode/package.xcworkspace}/xcshareddata/IDEWorkspaceChecks.plist (100%) delete mode 100644 ALCameraViewController.podspec delete mode 100644 ALCameraViewController.xcodeproj/project.pbxproj delete mode 100644 ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme delete mode 100644 CameraViewController/CameraViewController.h delete mode 100644 CameraViewController/Info.plist create mode 100644 Package.swift rename {ALCameraViewController => Sources/ALCameraViewController}/CameraView.strings (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/closeButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/closeButton.imageset/closeButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/closeButton.imageset/closeButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/closeButton.imageset/closeButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/confirmButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashAutoIcon.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOffIcon.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOnIcon.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryCancel.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryConfirm.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/permissionsIcon.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/placeholder.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/placeholder.imageset/placeholder.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/placeholder.imageset/placeholder@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/placeholder.imageset/placeholder@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/retakeButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/swapButton.imageset/Contents.json (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/swapButton.imageset/swapButton.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/swapButton.imageset/swapButton@2x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/CameraViewAssets.xcassets/swapButton.imageset/swapButton@3x.png (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/CameraGlobals.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/CameraShot.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/CroppingParameters.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/ImageFetcher.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/PhotoLibraryAuthorizer.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/SingleImageFetcher.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/SingleImageSaver.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/UIButtonExtensions.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/UIViewExtensions.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/Utilities.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Utilities/VolumeControl.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/ViewController/CameraViewController.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/ViewController/CameraViewControllerConstraint.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/ViewController/ConfirmViewController.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/ViewController/ConfirmViewController.xib (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/ViewController/PhotoLibraryViewController.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Views/CameraView.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Views/CropOverlay.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Views/ImageCell.swift (100%) rename {ALCameraViewController => Sources/ALCameraViewController}/Views/PermissionsView.swift (100%) diff --git a/.swift-version b/.swift-version deleted file mode 100644 index 5186d070..00000000 --- a/.swift-version +++ /dev/null @@ -1 +0,0 @@ -4.0 diff --git a/ALCameraViewController.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata similarity index 65% rename from ALCameraViewController.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to .swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata index 23ef6f7d..919434a6 100644 --- a/ALCameraViewController.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from ALCameraViewController.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to .swiftpm/xcode/package.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/ALCameraViewController.podspec b/ALCameraViewController.podspec deleted file mode 100644 index d7dd9899..00000000 --- a/ALCameraViewController.podspec +++ /dev/null @@ -1,14 +0,0 @@ -Pod::Spec.new do |spec| - spec.name = "ALCameraViewController" - spec.version = "3.0.3" - spec.summary = "A camera view controller with custom image picker and image cropping." - spec.source = { :git => "https://github.com/AlexLittlejohn/ALCameraViewController.git", :tag => spec.version.to_s } - spec.requires_arc = true - spec.platform = :ios, "8.0" - spec.license = "MIT" - spec.source_files = "ALCameraViewController/**/*.{swift}" - spec.resources = ["ALCameraViewController/ViewController/ConfirmViewController.xib", "ALCameraViewController/CameraViewAssets.xcassets", "ALCameraViewController/CameraView.strings"] - spec.homepage = "https://github.com/AlexLittlejohn/ALCameraViewController" - spec.author = { "Alex Littlejohn" => "alexlittlejohn@me.com" } - spec.pod_target_xcconfig = { 'SWIFT_VERSION' => '4.0' } -end diff --git a/ALCameraViewController.xcodeproj/project.pbxproj b/ALCameraViewController.xcodeproj/project.pbxproj deleted file mode 100644 index b7cccf5c..00000000 --- a/ALCameraViewController.xcodeproj/project.pbxproj +++ /dev/null @@ -1,623 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 1F3C56291F701CA7009667E9 /* CroppingParameters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */; }; - 7AC96FA21F5B5166003E53F4 /* CroppingParameters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */; }; - 7C6AF41F1FB340CA006CB4ED /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */; }; - C40665441C73A47C00EB9751 /* SingleImageSaver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665431C73A47C00EB9751 /* SingleImageSaver.swift */; }; - C40665461C73A94100EB9751 /* CameraGlobals.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665451C73A94100EB9751 /* CameraGlobals.swift */; }; - C40665481C73B72D00EB9751 /* SingleImageFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */; }; - C44543211CA68DDE00644380 /* VolumeControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = C44543201CA68DDE00644380 /* VolumeControl.swift */; }; - C4768C001CAF2EA100A084F8 /* ConfirmViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = C4768BFF1CAF2EA100A084F8 /* ConfirmViewController.xib */; }; - C4768C011CAF2EAA00A084F8 /* ConfirmViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = C4768BFF1CAF2EA100A084F8 /* ConfirmViewController.xib */; }; - C4829FFE1CAEB16C00541D08 /* CameraViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = C4829FFD1CAEB16C00541D08 /* CameraViewController.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C482A0031CAEB18D00541D08 /* ImageFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BF01B413E8C009905B9 /* ImageFetcher.swift */; }; - C482A0041CAEB18D00541D08 /* SingleImageSaver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665431C73A47C00EB9751 /* SingleImageSaver.swift */; }; - C482A0051CAEB18D00541D08 /* SingleImageFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */; }; - C482A0061CAEB18D00541D08 /* Utilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA8231391B3C296C00A837BE /* Utilities.swift */; }; - C482A0071CAEB18D00541D08 /* CameraShot.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058691B317894008E5592 /* CameraShot.swift */; }; - C482A0081CAEB18D00541D08 /* CameraGlobals.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665451C73A94100EB9751 /* CameraGlobals.swift */; }; - C482A0091CAEB18D00541D08 /* VolumeControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = C44543201CA68DDE00644380 /* VolumeControl.swift */; }; - C482A00A1CAEB18D00541D08 /* PhotoLibraryAuthorizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D9BA441CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift */; }; - C482A00B1CAEB18D00541D08 /* UIButtonExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D9BA461CA73163004F70F7 /* UIButtonExtensions.swift */; }; - C482A00C1CAEB18D00541D08 /* PhotoLibraryViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BF91B413E8C009905B9 /* PhotoLibraryViewController.swift */; }; - C482A00D1CAEB18D00541D08 /* CameraViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058651B316695008E5592 /* CameraViewController.swift */; }; - C482A00E1CAEB18D00541D08 /* ConfirmViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA7E6B9A1B429012000E1B14 /* ConfirmViewController.swift */; }; - C482A00F1CAEB18D00541D08 /* ImageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BEE1B413E8C009905B9 /* ImageCell.swift */; }; - C482A0101CAEB18D00541D08 /* PermissionsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA5FA3421B3AFA2B00497C62 /* PermissionsView.swift */; }; - C482A0111CAEB18D00541D08 /* CameraView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058671B3175C5008E5592 /* CameraView.swift */; }; - C482A0121CAEB18D00541D08 /* CropOverlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA787F1B1B4326F100B6B86E /* CropOverlay.swift */; }; - C482A0141CAEB1B100541D08 /* CameraView.strings in Resources */ = {isa = PBXBuildFile; fileRef = FA8231371B3BF8F700A837BE /* CameraView.strings */; }; - C482A0151CAEB1B100541D08 /* CameraViewAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FA5FA3441B3AFEB300497C62 /* CameraViewAssets.xcassets */; }; - C484580B1D0AA44400ECDB15 /* UIViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBFE097C1CAF1D1A00A8C637 /* UIViewExtensions.swift */; }; - C484580C1D0AA44400ECDB15 /* CameraViewControllerConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBF7829B1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift */; }; - C4D9BA451CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D9BA441CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift */; }; - C4D9BA471CA73163004F70F7 /* UIButtonExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D9BA461CA73163004F70F7 /* UIButtonExtensions.swift */; }; - EBF7829C1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBF7829B1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift */; }; - EBFE097D1CAF1D1A00A8C637 /* UIViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBFE097C1CAF1D1A00A8C637 /* UIViewExtensions.swift */; }; - FA52EE0B1B44129B00E16B6F /* ViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = FA52EE0A1B44129B00E16B6F /* ViewController.xib */; }; - FA5FA3431B3AFA2B00497C62 /* PermissionsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA5FA3421B3AFA2B00497C62 /* PermissionsView.swift */; }; - FA5FA3451B3AFEB300497C62 /* CameraViewAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FA5FA3441B3AFEB300497C62 /* CameraViewAssets.xcassets */; }; - FA778A411B8319D8005807E7 /* image.jpg in Resources */ = {isa = PBXBuildFile; fileRef = FA778A401B8319D8005807E7 /* image.jpg */; }; - FA787F1C1B4326F100B6B86E /* CropOverlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA787F1B1B4326F100B6B86E /* CropOverlay.swift */; }; - FA7E6B9B1B429012000E1B14 /* ConfirmViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA7E6B9A1B429012000E1B14 /* ConfirmViewController.swift */; }; - FA8231381B3BF8F700A837BE /* CameraView.strings in Resources */ = {isa = PBXBuildFile; fileRef = FA8231371B3BF8F700A837BE /* CameraView.strings */; }; - FA82313A1B3C296C00A837BE /* Utilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA8231391B3C296C00A837BE /* Utilities.swift */; }; - FAB50BFB1B413E8C009905B9 /* ImageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BEE1B413E8C009905B9 /* ImageCell.swift */; }; - FAB50BFC1B413E8C009905B9 /* ImageFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BF01B413E8C009905B9 /* ImageFetcher.swift */; }; - FAB50C001B413E8C009905B9 /* PhotoLibraryViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB50BF91B413E8C009905B9 /* PhotoLibraryViewController.swift */; }; - FAF058451B31618D008E5592 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058441B31618D008E5592 /* AppDelegate.swift */; }; - FAF058471B31618D008E5592 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058461B31618D008E5592 /* ViewController.swift */; }; - FAF0584C1B31618D008E5592 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FAF0584B1B31618D008E5592 /* Images.xcassets */; }; - FAF058661B316695008E5592 /* CameraViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058651B316695008E5592 /* CameraViewController.swift */; }; - FAF058681B3175C5008E5592 /* CameraView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058671B3175C5008E5592 /* CameraView.swift */; }; - FAF0586A1B317894008E5592 /* CameraShot.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF058691B317894008E5592 /* CameraShot.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CroppingParameters.swift; sourceTree = ""; }; - 7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LaunchScreen.xib; sourceTree = ""; }; - C40665431C73A47C00EB9751 /* SingleImageSaver.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SingleImageSaver.swift; sourceTree = ""; }; - C40665451C73A94100EB9751 /* CameraGlobals.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CameraGlobals.swift; sourceTree = ""; }; - C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SingleImageFetcher.swift; sourceTree = ""; }; - C44543201CA68DDE00644380 /* VolumeControl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VolumeControl.swift; sourceTree = ""; }; - C4768BFF1CAF2EA100A084F8 /* ConfirmViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ConfirmViewController.xib; sourceTree = ""; }; - C4829FFB1CAEB16C00541D08 /* CameraViewController.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CameraViewController.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - C4829FFD1CAEB16C00541D08 /* CameraViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CameraViewController.h; sourceTree = ""; }; - C4829FFF1CAEB16C00541D08 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - C4D9BA441CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhotoLibraryAuthorizer.swift; sourceTree = ""; }; - C4D9BA461CA73163004F70F7 /* UIButtonExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UIButtonExtensions.swift; sourceTree = ""; }; - EBF7829B1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = CameraViewControllerConstraint.swift; sourceTree = ""; tabWidth = 4; }; - EBFE097C1CAF1D1A00A8C637 /* UIViewExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UIViewExtensions.swift; sourceTree = ""; }; - FA52EE0A1B44129B00E16B6F /* ViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ViewController.xib; sourceTree = ""; }; - FA5FA3421B3AFA2B00497C62 /* PermissionsView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PermissionsView.swift; sourceTree = ""; }; - FA5FA3441B3AFEB300497C62 /* CameraViewAssets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = CameraViewAssets.xcassets; sourceTree = ""; }; - FA778A401B8319D8005807E7 /* image.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = image.jpg; sourceTree = ""; }; - FA787F1B1B4326F100B6B86E /* CropOverlay.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CropOverlay.swift; sourceTree = ""; }; - FA7E6B9A1B429012000E1B14 /* ConfirmViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConfirmViewController.swift; sourceTree = ""; }; - FA8231371B3BF8F700A837BE /* CameraView.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; path = CameraView.strings; sourceTree = ""; }; - FA8231391B3C296C00A837BE /* Utilities.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = Utilities.swift; sourceTree = ""; tabWidth = 4; }; - FAB50BEE1B413E8C009905B9 /* ImageCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = ImageCell.swift; sourceTree = ""; tabWidth = 4; }; - FAB50BF01B413E8C009905B9 /* ImageFetcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageFetcher.swift; sourceTree = ""; }; - FAB50BF91B413E8C009905B9 /* PhotoLibraryViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = PhotoLibraryViewController.swift; sourceTree = ""; tabWidth = 4; }; - FAF0583F1B31618D008E5592 /* ALCameraViewController.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ALCameraViewController.app; sourceTree = BUILT_PRODUCTS_DIR; }; - FAF058431B31618D008E5592 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FAF058441B31618D008E5592 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - FAF058461B31618D008E5592 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - FAF0584B1B31618D008E5592 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - FAF058651B316695008E5592 /* CameraViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = CameraViewController.swift; sourceTree = ""; tabWidth = 4; }; - FAF058671B3175C5008E5592 /* CameraView.swift */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = CameraView.swift; sourceTree = ""; tabWidth = 4; }; - FAF058691B317894008E5592 /* CameraShot.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CameraShot.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - C4829FF71CAEB16C00541D08 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FAF0583C1B31618D008E5592 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - C4829FFC1CAEB16C00541D08 /* CameraViewController */ = { - isa = PBXGroup; - children = ( - C4829FFD1CAEB16C00541D08 /* CameraViewController.h */, - C4829FFF1CAEB16C00541D08 /* Info.plist */, - ); - path = CameraViewController; - sourceTree = ""; - }; - FAB50BEA1B413E41009905B9 /* ViewController */ = { - isa = PBXGroup; - children = ( - FAB50BF91B413E8C009905B9 /* PhotoLibraryViewController.swift */, - FAF058651B316695008E5592 /* CameraViewController.swift */, - FA7E6B9A1B429012000E1B14 /* ConfirmViewController.swift */, - C4768BFF1CAF2EA100A084F8 /* ConfirmViewController.xib */, - EBF7829B1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift */, - ); - path = ViewController; - sourceTree = ""; - }; - FAB50BEB1B413E4E009905B9 /* Views */ = { - isa = PBXGroup; - children = ( - FAB50BEE1B413E8C009905B9 /* ImageCell.swift */, - FA5FA3421B3AFA2B00497C62 /* PermissionsView.swift */, - FAF058671B3175C5008E5592 /* CameraView.swift */, - FA787F1B1B4326F100B6B86E /* CropOverlay.swift */, - ); - path = Views; - sourceTree = ""; - }; - FAB50C021B4140AB009905B9 /* Utilities */ = { - isa = PBXGroup; - children = ( - FAB50BF01B413E8C009905B9 /* ImageFetcher.swift */, - C40665431C73A47C00EB9751 /* SingleImageSaver.swift */, - C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */, - FA8231391B3C296C00A837BE /* Utilities.swift */, - FAF058691B317894008E5592 /* CameraShot.swift */, - C40665451C73A94100EB9751 /* CameraGlobals.swift */, - C44543201CA68DDE00644380 /* VolumeControl.swift */, - C4D9BA441CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift */, - C4D9BA461CA73163004F70F7 /* UIButtonExtensions.swift */, - EBFE097C1CAF1D1A00A8C637 /* UIViewExtensions.swift */, - 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */, - ); - path = Utilities; - sourceTree = ""; - }; - FAF058361B31618D008E5592 = { - isa = PBXGroup; - children = ( - FAF058641B316628008E5592 /* Example */, - FAF058411B31618D008E5592 /* ALCameraViewController */, - C4829FFC1CAEB16C00541D08 /* CameraViewController */, - FAF058401B31618D008E5592 /* Products */, - ); - sourceTree = ""; - }; - FAF058401B31618D008E5592 /* Products */ = { - isa = PBXGroup; - children = ( - FAF0583F1B31618D008E5592 /* ALCameraViewController.app */, - C4829FFB1CAEB16C00541D08 /* CameraViewController.framework */, - ); - name = Products; - sourceTree = ""; - }; - FAF058411B31618D008E5592 /* ALCameraViewController */ = { - isa = PBXGroup; - children = ( - FAB50C021B4140AB009905B9 /* Utilities */, - FAB50BEA1B413E41009905B9 /* ViewController */, - FAB50BEB1B413E4E009905B9 /* Views */, - FA8231371B3BF8F700A837BE /* CameraView.strings */, - FA5FA3441B3AFEB300497C62 /* CameraViewAssets.xcassets */, - ); - path = ALCameraViewController; - sourceTree = ""; - }; - FAF058421B31618D008E5592 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */, - FAF0584B1B31618D008E5592 /* Images.xcassets */, - FAF058431B31618D008E5592 /* Info.plist */, - ); - path = "Supporting Files"; - sourceTree = ""; - }; - FAF058641B316628008E5592 /* Example */ = { - isa = PBXGroup; - children = ( - FA778A401B8319D8005807E7 /* image.jpg */, - FAF058441B31618D008E5592 /* AppDelegate.swift */, - FAF058461B31618D008E5592 /* ViewController.swift */, - FA52EE0A1B44129B00E16B6F /* ViewController.xib */, - FAF058421B31618D008E5592 /* Supporting Files */, - ); - path = Example; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - C4829FF81CAEB16C00541D08 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - C4829FFE1CAEB16C00541D08 /* CameraViewController.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - C4829FFA1CAEB16C00541D08 /* CameraViewController */ = { - isa = PBXNativeTarget; - buildConfigurationList = C482A0001CAEB16C00541D08 /* Build configuration list for PBXNativeTarget "CameraViewController" */; - buildPhases = ( - C4829FF61CAEB16C00541D08 /* Sources */, - C4829FF71CAEB16C00541D08 /* Frameworks */, - C4829FF81CAEB16C00541D08 /* Headers */, - C4829FF91CAEB16C00541D08 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = CameraViewController; - productName = CameraViewController; - productReference = C4829FFB1CAEB16C00541D08 /* CameraViewController.framework */; - productType = "com.apple.product-type.framework"; - }; - FAF0583E1B31618D008E5592 /* ALCameraViewController */ = { - isa = PBXNativeTarget; - buildConfigurationList = FAF0585E1B31618D008E5592 /* Build configuration list for PBXNativeTarget "ALCameraViewController" */; - buildPhases = ( - FAF0583B1B31618D008E5592 /* Sources */, - FAF0583C1B31618D008E5592 /* Frameworks */, - FAF0583D1B31618D008E5592 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = ALCameraViewController; - productName = ALCameraViewController; - productReference = FAF0583F1B31618D008E5592 /* ALCameraViewController.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - FAF058371B31618D008E5592 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftMigration = 0700; - LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 1130; - ORGANIZATIONNAME = zero; - TargetAttributes = { - C4829FFA1CAEB16C00541D08 = { - CreatedOnToolsVersion = 7.3; - LastSwiftMigration = 1130; - }; - FAF0583E1B31618D008E5592 = { - CreatedOnToolsVersion = 6.3.2; - DevelopmentTeam = 2466624KEK; - LastSwiftMigration = 0900; - ProvisioningStyle = Automatic; - }; - }; - }; - buildConfigurationList = FAF0583A1B31618D008E5592 /* Build configuration list for PBXProject "ALCameraViewController" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = FAF058361B31618D008E5592; - productRefGroup = FAF058401B31618D008E5592 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - FAF0583E1B31618D008E5592 /* ALCameraViewController */, - C4829FFA1CAEB16C00541D08 /* CameraViewController */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - C4829FF91CAEB16C00541D08 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C482A0141CAEB1B100541D08 /* CameraView.strings in Resources */, - C482A0151CAEB1B100541D08 /* CameraViewAssets.xcassets in Resources */, - C4768C011CAF2EAA00A084F8 /* ConfirmViewController.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FAF0583D1B31618D008E5592 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - FA52EE0B1B44129B00E16B6F /* ViewController.xib in Resources */, - FA8231381B3BF8F700A837BE /* CameraView.strings in Resources */, - 7C6AF41F1FB340CA006CB4ED /* LaunchScreen.xib in Resources */, - FA5FA3451B3AFEB300497C62 /* CameraViewAssets.xcassets in Resources */, - FAF0584C1B31618D008E5592 /* Images.xcassets in Resources */, - FA778A411B8319D8005807E7 /* image.jpg in Resources */, - C4768C001CAF2EA100A084F8 /* ConfirmViewController.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - C4829FF61CAEB16C00541D08 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C484580B1D0AA44400ECDB15 /* UIViewExtensions.swift in Sources */, - C484580C1D0AA44400ECDB15 /* CameraViewControllerConstraint.swift in Sources */, - C482A0031CAEB18D00541D08 /* ImageFetcher.swift in Sources */, - C482A0041CAEB18D00541D08 /* SingleImageSaver.swift in Sources */, - C482A0051CAEB18D00541D08 /* SingleImageFetcher.swift in Sources */, - 1F3C56291F701CA7009667E9 /* CroppingParameters.swift in Sources */, - C482A0061CAEB18D00541D08 /* Utilities.swift in Sources */, - C482A0071CAEB18D00541D08 /* CameraShot.swift in Sources */, - C482A0081CAEB18D00541D08 /* CameraGlobals.swift in Sources */, - C482A0091CAEB18D00541D08 /* VolumeControl.swift in Sources */, - C482A00A1CAEB18D00541D08 /* PhotoLibraryAuthorizer.swift in Sources */, - C482A00B1CAEB18D00541D08 /* UIButtonExtensions.swift in Sources */, - C482A00C1CAEB18D00541D08 /* PhotoLibraryViewController.swift in Sources */, - C482A00D1CAEB18D00541D08 /* CameraViewController.swift in Sources */, - C482A00E1CAEB18D00541D08 /* ConfirmViewController.swift in Sources */, - C482A00F1CAEB18D00541D08 /* ImageCell.swift in Sources */, - C482A0101CAEB18D00541D08 /* PermissionsView.swift in Sources */, - C482A0111CAEB18D00541D08 /* CameraView.swift in Sources */, - C482A0121CAEB18D00541D08 /* CropOverlay.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FAF0583B1B31618D008E5592 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C44543211CA68DDE00644380 /* VolumeControl.swift in Sources */, - FA7E6B9B1B429012000E1B14 /* ConfirmViewController.swift in Sources */, - FA5FA3431B3AFA2B00497C62 /* PermissionsView.swift in Sources */, - FAB50BFC1B413E8C009905B9 /* ImageFetcher.swift in Sources */, - EBF7829C1CB2C04300DE3E63 /* CameraViewControllerConstraint.swift in Sources */, - FA82313A1B3C296C00A837BE /* Utilities.swift in Sources */, - FAB50C001B413E8C009905B9 /* PhotoLibraryViewController.swift in Sources */, - FAF0586A1B317894008E5592 /* CameraShot.swift in Sources */, - FAF058661B316695008E5592 /* CameraViewController.swift in Sources */, - 7AC96FA21F5B5166003E53F4 /* CroppingParameters.swift in Sources */, - C4D9BA451CA7224B004F70F7 /* PhotoLibraryAuthorizer.swift in Sources */, - FAB50BFB1B413E8C009905B9 /* ImageCell.swift in Sources */, - EBFE097D1CAF1D1A00A8C637 /* UIViewExtensions.swift in Sources */, - C40665481C73B72D00EB9751 /* SingleImageFetcher.swift in Sources */, - FAF058471B31618D008E5592 /* ViewController.swift in Sources */, - FAF058681B3175C5008E5592 /* CameraView.swift in Sources */, - C4D9BA471CA73163004F70F7 /* UIButtonExtensions.swift in Sources */, - C40665461C73A94100EB9751 /* CameraGlobals.swift in Sources */, - FAF058451B31618D008E5592 /* AppDelegate.swift in Sources */, - C40665441C73A47C00EB9751 /* SingleImageSaver.swift in Sources */, - FA787F1C1B4326F100B6B86E /* CropOverlay.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - C482A0011CAEB16C00541D08 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ANALYZER_NONNULL = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = CameraViewController/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MARKETING_VERSION = 10.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - C482A0021CAEB16C00541D08 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ANALYZER_NONNULL = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = CameraViewController/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MARKETING_VERSION = 10.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.zero.CameraViewController; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - FAF0585C1B31618D008E5592 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - FAF0585D1B31618D008E5592 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - FAF0585F1B31618D008E5592 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = 2466624KEK; - INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 10.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; - SWIFT_VERSION = 4.0; - }; - name = Debug; - }; - FAF058601B31618D008E5592 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - DEVELOPMENT_TEAM = 2466624KEK; - INFOPLIST_FILE = "Example/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 10.0.1; - PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; - SWIFT_VERSION = 4.0; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - C482A0001CAEB16C00541D08 /* Build configuration list for PBXNativeTarget "CameraViewController" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C482A0011CAEB16C00541D08 /* Debug */, - C482A0021CAEB16C00541D08 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - FAF0583A1B31618D008E5592 /* Build configuration list for PBXProject "ALCameraViewController" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - FAF0585C1B31618D008E5592 /* Debug */, - FAF0585D1B31618D008E5592 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - FAF0585E1B31618D008E5592 /* Build configuration list for PBXNativeTarget "ALCameraViewController" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - FAF0585F1B31618D008E5592 /* Debug */, - FAF058601B31618D008E5592 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = FAF058371B31618D008E5592 /* Project object */; -} diff --git a/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme b/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme deleted file mode 100644 index 0fdcfe21..00000000 --- a/ALCameraViewController.xcodeproj/xcshareddata/xcschemes/CameraViewController.xcscheme +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/CameraViewController/CameraViewController.h b/CameraViewController/CameraViewController.h deleted file mode 100644 index c6e40c05..00000000 --- a/CameraViewController/CameraViewController.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// CameraViewController.h -// CameraViewController -// -// Created by Alex Littlejohn on 2016/04/01. -// Copyright © 2016 zero. All rights reserved. -// - -#import - -//! Project version number for CameraViewController. -FOUNDATION_EXPORT double CameraViewControllerVersionNumber; - -//! Project version string for CameraViewController. -FOUNDATION_EXPORT const unsigned char CameraViewControllerVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/CameraViewController/Info.plist b/CameraViewController/Info.plist deleted file mode 100644 index ca23c84f..00000000 --- a/CameraViewController/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - $(MARKETING_VERSION) - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/Package.swift b/Package.swift new file mode 100644 index 00000000..9024bc84 --- /dev/null +++ b/Package.swift @@ -0,0 +1,28 @@ +// swift-tools-version:5.3 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "ALCameraViewController", + platforms: [ + .iOS(.v13) + ], + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. + .library( + name: "ALCameraViewController", + targets: ["ALCameraViewController"]), + ], + dependencies: [ + // Dependencies declare other packages that this package depends on. + // .package(url: /* package url */, from: "1.0.0"), + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages this package depends on. + .target( + name: "ALCameraViewController", + dependencies: []) + ] +) diff --git a/ALCameraViewController/CameraView.strings b/Sources/ALCameraViewController/CameraView.strings similarity index 100% rename from ALCameraViewController/CameraView.strings rename to Sources/ALCameraViewController/CameraView.strings diff --git a/ALCameraViewController/CameraViewAssets.xcassets/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButton.imageset/cameraButton@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/cameraButtonHighlighted.imageset/cameraButtonHighlighted@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/closeButton.imageset/closeButton@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/confirmButton.imageset/confirmButton@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashAutoIcon.imageset/flashAutoIcon@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOffIcon.imageset/flashOffIcon@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/flashOnIcon.imageset/flashOnIcon@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryButton.imageset/libraryButton@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryCancel.imageset/libraryCancel@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/libraryConfirm.imageset/libraryConfirm@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/permissionsIcon.imageset/cameraPermissionsIcon@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/placeholder.imageset/placeholder@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/retakeButton.imageset/retakeButton@3x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/Contents.json b/Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/Contents.json similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/Contents.json rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/Contents.json diff --git a/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@2x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@2x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@2x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@2x.png diff --git a/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@3x.png b/Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@3x.png similarity index 100% rename from ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@3x.png rename to Sources/ALCameraViewController/CameraViewAssets.xcassets/swapButton.imageset/swapButton@3x.png diff --git a/ALCameraViewController/Utilities/CameraGlobals.swift b/Sources/ALCameraViewController/Utilities/CameraGlobals.swift similarity index 100% rename from ALCameraViewController/Utilities/CameraGlobals.swift rename to Sources/ALCameraViewController/Utilities/CameraGlobals.swift diff --git a/ALCameraViewController/Utilities/CameraShot.swift b/Sources/ALCameraViewController/Utilities/CameraShot.swift similarity index 100% rename from ALCameraViewController/Utilities/CameraShot.swift rename to Sources/ALCameraViewController/Utilities/CameraShot.swift diff --git a/ALCameraViewController/Utilities/CroppingParameters.swift b/Sources/ALCameraViewController/Utilities/CroppingParameters.swift similarity index 100% rename from ALCameraViewController/Utilities/CroppingParameters.swift rename to Sources/ALCameraViewController/Utilities/CroppingParameters.swift diff --git a/ALCameraViewController/Utilities/ImageFetcher.swift b/Sources/ALCameraViewController/Utilities/ImageFetcher.swift similarity index 100% rename from ALCameraViewController/Utilities/ImageFetcher.swift rename to Sources/ALCameraViewController/Utilities/ImageFetcher.swift diff --git a/ALCameraViewController/Utilities/PhotoLibraryAuthorizer.swift b/Sources/ALCameraViewController/Utilities/PhotoLibraryAuthorizer.swift similarity index 100% rename from ALCameraViewController/Utilities/PhotoLibraryAuthorizer.swift rename to Sources/ALCameraViewController/Utilities/PhotoLibraryAuthorizer.swift diff --git a/ALCameraViewController/Utilities/SingleImageFetcher.swift b/Sources/ALCameraViewController/Utilities/SingleImageFetcher.swift similarity index 100% rename from ALCameraViewController/Utilities/SingleImageFetcher.swift rename to Sources/ALCameraViewController/Utilities/SingleImageFetcher.swift diff --git a/ALCameraViewController/Utilities/SingleImageSaver.swift b/Sources/ALCameraViewController/Utilities/SingleImageSaver.swift similarity index 100% rename from ALCameraViewController/Utilities/SingleImageSaver.swift rename to Sources/ALCameraViewController/Utilities/SingleImageSaver.swift diff --git a/ALCameraViewController/Utilities/UIButtonExtensions.swift b/Sources/ALCameraViewController/Utilities/UIButtonExtensions.swift similarity index 100% rename from ALCameraViewController/Utilities/UIButtonExtensions.swift rename to Sources/ALCameraViewController/Utilities/UIButtonExtensions.swift diff --git a/ALCameraViewController/Utilities/UIViewExtensions.swift b/Sources/ALCameraViewController/Utilities/UIViewExtensions.swift similarity index 100% rename from ALCameraViewController/Utilities/UIViewExtensions.swift rename to Sources/ALCameraViewController/Utilities/UIViewExtensions.swift diff --git a/ALCameraViewController/Utilities/Utilities.swift b/Sources/ALCameraViewController/Utilities/Utilities.swift similarity index 100% rename from ALCameraViewController/Utilities/Utilities.swift rename to Sources/ALCameraViewController/Utilities/Utilities.swift diff --git a/ALCameraViewController/Utilities/VolumeControl.swift b/Sources/ALCameraViewController/Utilities/VolumeControl.swift similarity index 100% rename from ALCameraViewController/Utilities/VolumeControl.swift rename to Sources/ALCameraViewController/Utilities/VolumeControl.swift diff --git a/ALCameraViewController/ViewController/CameraViewController.swift b/Sources/ALCameraViewController/ViewController/CameraViewController.swift similarity index 100% rename from ALCameraViewController/ViewController/CameraViewController.swift rename to Sources/ALCameraViewController/ViewController/CameraViewController.swift diff --git a/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift b/Sources/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift similarity index 100% rename from ALCameraViewController/ViewController/CameraViewControllerConstraint.swift rename to Sources/ALCameraViewController/ViewController/CameraViewControllerConstraint.swift diff --git a/ALCameraViewController/ViewController/ConfirmViewController.swift b/Sources/ALCameraViewController/ViewController/ConfirmViewController.swift similarity index 100% rename from ALCameraViewController/ViewController/ConfirmViewController.swift rename to Sources/ALCameraViewController/ViewController/ConfirmViewController.swift diff --git a/ALCameraViewController/ViewController/ConfirmViewController.xib b/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib similarity index 100% rename from ALCameraViewController/ViewController/ConfirmViewController.xib rename to Sources/ALCameraViewController/ViewController/ConfirmViewController.xib diff --git a/ALCameraViewController/ViewController/PhotoLibraryViewController.swift b/Sources/ALCameraViewController/ViewController/PhotoLibraryViewController.swift similarity index 100% rename from ALCameraViewController/ViewController/PhotoLibraryViewController.swift rename to Sources/ALCameraViewController/ViewController/PhotoLibraryViewController.swift diff --git a/ALCameraViewController/Views/CameraView.swift b/Sources/ALCameraViewController/Views/CameraView.swift similarity index 100% rename from ALCameraViewController/Views/CameraView.swift rename to Sources/ALCameraViewController/Views/CameraView.swift diff --git a/ALCameraViewController/Views/CropOverlay.swift b/Sources/ALCameraViewController/Views/CropOverlay.swift similarity index 100% rename from ALCameraViewController/Views/CropOverlay.swift rename to Sources/ALCameraViewController/Views/CropOverlay.swift diff --git a/ALCameraViewController/Views/ImageCell.swift b/Sources/ALCameraViewController/Views/ImageCell.swift similarity index 100% rename from ALCameraViewController/Views/ImageCell.swift rename to Sources/ALCameraViewController/Views/ImageCell.swift diff --git a/ALCameraViewController/Views/PermissionsView.swift b/Sources/ALCameraViewController/Views/PermissionsView.swift similarity index 100% rename from ALCameraViewController/Views/PermissionsView.swift rename to Sources/ALCameraViewController/Views/PermissionsView.swift From 7a396f05adac0a312aa11569be84c3b144d0c19e Mon Sep 17 00:00:00 2001 From: Geert Michiels Date: Sat, 30 Jan 2021 13:51:14 +0100 Subject: [PATCH 09/12] using Bundle.module --- Sources/ALCameraViewController/Utilities/CameraGlobals.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/ALCameraViewController/Utilities/CameraGlobals.swift b/Sources/ALCameraViewController/Utilities/CameraGlobals.swift index b09c7e89..5b5524c9 100644 --- a/Sources/ALCameraViewController/Utilities/CameraGlobals.swift +++ b/Sources/ALCameraViewController/Utilities/CameraGlobals.swift @@ -17,7 +17,7 @@ internal let scale = UIScreen.main.scale public class CameraGlobals { public static let shared = CameraGlobals() - public var bundle = Bundle(for: CameraViewController.self) + public var bundle = Bundle.module public var stringsTable = "CameraView" public var photoLibraryThumbnailSize = CGSize(width: thumbnailDimension, height: thumbnailDimension) public var defaultCameraPosition = AVCaptureDevice.Position.back From 1e85df48fd5abb555760fa8c8a48b36885f6f774 Mon Sep 17 00:00:00 2001 From: Geert Michiels Date: Sat, 30 Jan 2021 14:20:47 +0100 Subject: [PATCH 10/12] update xib module --- .../ViewController/ConfirmViewController.xib | 28 +++++++++---------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib b/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib index c3f3a9dc..4c29dfac 100644 --- a/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib +++ b/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib @@ -1,12 +1,9 @@ - - - - + + - - + @@ -32,7 +29,7 @@ - + @@ -113,6 +110,10 @@ + + + + @@ -123,10 +124,6 @@ - - - - @@ -186,14 +183,14 @@ - - - - + + + + @@ -201,6 +198,7 @@ + From 6204223b33692f8204cc9ebd343eb98ac5068a77 Mon Sep 17 00:00:00 2001 From: Geert Michiels Date: Sat, 30 Jan 2021 14:28:02 +0100 Subject: [PATCH 11/12] overlay crash --- .../ViewController/ConfirmViewController.xib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib b/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib index 4c29dfac..703a7a55 100644 --- a/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib +++ b/Sources/ALCameraViewController/ViewController/ConfirmViewController.xib @@ -29,7 +29,7 @@ - + From 7340059a0d20c3444be4e11026706bf86826ab42 Mon Sep 17 00:00:00 2001 From: Geert Michiels Date: Sun, 31 Jan 2021 08:36:09 +0100 Subject: [PATCH 12/12] added CameraView.strings as resource in package --- Package.swift | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Package.swift b/Package.swift index 9024bc84..5e3a9984 100644 --- a/Package.swift +++ b/Package.swift @@ -23,6 +23,9 @@ let package = Package( // Targets can depend on other targets in this package, and on products in packages this package depends on. .target( name: "ALCameraViewController", - dependencies: []) + dependencies: [], + resources: [ + .process("CameraView.strings") + ]) ] )