// // AssetPickerSheetContainerViewController.swift // Tusker // // Created by Shadowfacts on 1/1/20. // Copyright © 2020 Shadowfacts. All rights reserved. // import UIKit import SheetController import Photos class AssetPickerSheetContainerViewController: SheetContainerViewController { let assetPicker = AssetPickerViewController() init() { super.init(content: assetPicker) assetPicker.view.translatesAutoresizingMaskIntoConstraints = false assetPicker.view.layer.masksToBounds = true delegate = self assetPicker.delegate = self detents = [.bottom, .middle, .top] overrideUserInterfaceStyle = .dark } required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } override func viewDidLoad() { assetPicker.view.layer.cornerRadius = view.bounds.width * 0.02 super.viewDidLoad() } } extension AssetPickerSheetContainerViewController: SheetContainerViewControllerDelegate { func sheetContainer(_ sheetContainer: SheetContainerViewController, willSnapToDetent detent: Detent) -> Bool { if detent == .bottom { dismiss(animated: true) return false } return true } func sheetContainerContentScrollView(_ sheetContainer: SheetContainerViewController) -> UIScrollView? { if let vc = assetPicker.visibleViewController as? UITableViewController { return vc.tableView } else if let vc = assetPicker.visibleViewController as? UICollectionViewController { return vc.collectionView } return nil } func sheetContainer(_ sheetContainer: SheetContainerViewController, topContentOffsetForScrollView scrollView: UIScrollView) -> CGFloat { return assetPicker.navigationBar.bounds.height } } extension AssetPickerSheetContainerViewController: UINavigationControllerDelegate { func navigationController(_ navigationController: UINavigationController, didShow viewController: UIViewController, animated: Bool) { contentScrollViewChanged() // viewController.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed)) } }