Repo created
This commit is contained in:
parent
4af19165ec
commit
68073add76
12458 changed files with 12350765 additions and 2 deletions
25
iphone/Maps/UI/DocumentPicker/DocumentPicker.swift
Normal file
25
iphone/Maps/UI/DocumentPicker/DocumentPicker.swift
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
typealias URLsCompletionHandler = ([URL]) -> Void
|
||||
|
||||
final class DocumentPicker: NSObject {
|
||||
static let shared = DocumentPicker()
|
||||
private var completionHandler: URLsCompletionHandler?
|
||||
|
||||
func present(from rootViewController: UIViewController,
|
||||
fileTypes: [FileType] = [.kml, .kmz, .gpx],
|
||||
completionHandler: @escaping URLsCompletionHandler) {
|
||||
self.completionHandler = completionHandler
|
||||
let documentPickerViewController: UIDocumentPickerViewController
|
||||
documentPickerViewController = UIDocumentPickerViewController(forOpeningContentTypes: fileTypes.map(\.utType), asCopy: true)
|
||||
documentPickerViewController.delegate = self
|
||||
// TODO: Enable multiple selection when the multiple files parsing support will be added to the bookmark_manager.
|
||||
documentPickerViewController.allowsMultipleSelection = false
|
||||
rootViewController.present(documentPickerViewController, animated: true)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - UIDocumentPickerDelegate
|
||||
extension DocumentPicker: UIDocumentPickerDelegate {
|
||||
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
|
||||
completionHandler?(urls)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue