|
@@ -1,10 +1,11 @@
|
|
|
import UIKit
|
|
|
import WebKit
|
|
|
|
|
|
-class HelpViewController: UIViewController {
|
|
|
+class HelpViewController: UIViewController, WKNavigationDelegate {
|
|
|
|
|
|
private lazy var webView: WKWebView = {
|
|
|
let view = WKWebView()
|
|
|
+ view.navigationDelegate = self
|
|
|
return view
|
|
|
}()
|
|
|
|
|
@@ -17,6 +18,19 @@ class HelpViewController: UIViewController {
|
|
|
fatalError("init(coder:) has not been implemented")
|
|
|
}
|
|
|
|
|
|
+ func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
|
|
|
+ if navigationAction.navigationType == .linkActivated {
|
|
|
+ if let url = navigationAction.request.url,
|
|
|
+ url.host != nil,
|
|
|
+ UIApplication.shared.canOpenURL(url) {
|
|
|
+ UIApplication.shared.open(url)
|
|
|
+ decisionHandler(.cancel)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ decisionHandler(.allow)
|
|
|
+ }
|
|
|
+
|
|
|
// MARK: - lifecycle
|
|
|
override func viewDidLoad() {
|
|
|
super.viewDidLoad()
|
|
@@ -62,7 +76,7 @@ class HelpViewController: UIViewController {
|
|
|
var fileURL: URL?
|
|
|
|
|
|
fileURL = Bundle.main.url(forResource: "help", withExtension: "html", subdirectory: "Assets/Help/\(lang)") ??
|
|
|
- Bundle.main.url(forResource: "en_help", withExtension: "html", subdirectory: "Assets/Help/en")
|
|
|
+ Bundle.main.url(forResource: "help", withExtension: "html", subdirectory: "Assets/Help/en")
|
|
|
|
|
|
guard let url = fileURL else {
|
|
|
safe_fatalError("could not find help asset")
|