mirror of
https://github.com/Ranchero-Software/NetNewsWire.git
synced 2025-01-31 19:24:55 +01:00
46 lines
1.1 KiB
Swift
46 lines
1.1 KiB
Swift
|
//
|
||
|
// OpenInSafariActivity.swift
|
||
|
// NetNewsWire-iOS
|
||
|
//
|
||
|
// Created by Maurice Parker on 1/9/20.
|
||
|
// Copyright © 2020 Ranchero Software. All rights reserved.
|
||
|
//
|
||
|
|
||
|
import UIKit
|
||
|
|
||
|
class OpenInSafariActivity: UIActivity {
|
||
|
|
||
|
private var activityItems: [Any]?
|
||
|
|
||
|
override var activityTitle: String? {
|
||
|
return NSLocalizedString("Open in Safari", comment: "Open in Safari")
|
||
|
}
|
||
|
|
||
|
override var activityImage: UIImage? {
|
||
|
return UIImage(systemName: "safari", withConfiguration: UIImage.SymbolConfiguration(pointSize: 20, weight: .regular))
|
||
|
}
|
||
|
|
||
|
override var activityType: UIActivity.ActivityType? {
|
||
|
return UIActivity.ActivityType(rawValue: "com.rancharo.NetNewsWire-Evergreen.safari")
|
||
|
}
|
||
|
|
||
|
override class var activityCategory: UIActivity.Category {
|
||
|
return .action
|
||
|
}
|
||
|
|
||
|
override func canPerform(withActivityItems activityItems: [Any]) -> Bool {
|
||
|
return true
|
||
|
}
|
||
|
|
||
|
override func prepare(withActivityItems activityItems: [Any]) {
|
||
|
self.activityItems = activityItems
|
||
|
}
|
||
|
|
||
|
override func perform() {
|
||
|
guard let url = activityItems?.first as? URL else { return }
|
||
|
UIApplication.shared.open(url, options: [:], completionHandler: nil)
|
||
|
activityDidFinish(true)
|
||
|
}
|
||
|
|
||
|
}
|