diff --git a/Kiwix-iOS/Controller/Main/JSInjection.swift b/Kiwix-iOS/Controller/Main/JSInjection.swift index a4c0834f..a3234f3b 100644 --- a/Kiwix-iOS/Controller/Main/JSInjection.swift +++ b/Kiwix-iOS/Controller/Main/JSInjection.swift @@ -1,5 +1,5 @@ // -// JSInjection.swift +// JS.swift // Kiwix // // Created by Chris Li on 9/9/16. @@ -9,13 +9,12 @@ import UIKit import JavaScriptCore -class JSInjection { +class JS { class func inject(webView: UIWebView) { - let context = webView.valueForKeyPath("documentView.webView.mainFrame.javaScriptContext") as? JSContext let path = NSBundle.mainBundle().pathForResource("injection", ofType: "js") let jString = try? String(contentsOfFile: path!) - context?.evaluateScript(jString!) + webView.context.evaluateScript(jString!) } class func adjustFontSizeIfNeeded(webView: UIWebView) { @@ -48,3 +47,9 @@ class JSInjection { return snippet == "null" ? nil : snippet } } + +extension UIWebView { + var context: JSContext { + return valueForKeyPath("documentView.webView.mainFrame.javaScriptContext") as! JSContext + } +} diff --git a/Kiwix-iOS/Controller/Main/MainController.swift b/Kiwix-iOS/Controller/Main/MainController.swift index 9a94acf4..33f59fb1 100644 --- a/Kiwix-iOS/Controller/Main/MainController.swift +++ b/Kiwix-iOS/Controller/Main/MainController.swift @@ -158,7 +158,7 @@ class MainController: UIViewController { func configureTableOfContents() { guard isShowingTableOfContents else {return} - tableOfContentsController?.headings = JSInjection.getTableOfContents(webView) + tableOfContentsController?.headings = JS.getTableOfContents(webView) } func configureUserActivity() { diff --git a/Kiwix-iOS/Controller/Main/MainControllerDelegates.swift b/Kiwix-iOS/Controller/Main/MainControllerDelegates.swift index 27997dd9..91ecf00a 100644 --- a/Kiwix-iOS/Controller/Main/MainControllerDelegates.swift +++ b/Kiwix-iOS/Controller/Main/MainControllerDelegates.swift @@ -44,15 +44,15 @@ extension MainController: UIWebViewDelegate, SFSafariViewControllerDelegate, LPT // Create article object guard let url = webView.request?.URL, let article = Article.addOrUpdate(url: url, context: NSManagedObjectContext.mainQueueContext) else {return} - article.title = JSInjection.getTitle(from: webView) + article.title = JS.getTitle(from: webView) article.thumbImagePath = URLResponseCache.shared.firstImage()?.path self.article = article // UI Updates configureNavigationButtonTint() configureTableOfContents() - JSInjection.adjustFontSizeIfNeeded(webView) - JSInjection.inject(webView) + JS.adjustFontSizeIfNeeded(webView) + JS.inject(webView) } func webView(webView: UIWebView, didFailLoadWithError error: NSError) { @@ -83,7 +83,7 @@ extension MainController: UIWebViewDelegate, SFSafariViewControllerDelegate, LPT article.isBookmarked = !article.isBookmarked if article.isBookmarked {article.bookmarkDate = NSDate()} - if article.snippet == nil {article.snippet = JSInjection.getSnippet(webView)} + if article.snippet == nil {article.snippet = JS.getSnippet(webView)} // let cloudKitUpdateOperation = BookmarkCloudKitOperation(article: article) // GlobalQueue.shared.addOperation(cloudKitUpdateOperation) diff --git a/Kiwix-iOS/Info.plist b/Kiwix-iOS/Info.plist index 9c5d1bd2..29be554c 100644 --- a/Kiwix-iOS/Info.plist +++ b/Kiwix-iOS/Info.plist @@ -49,7 +49,7 @@ CFBundleVersion - 1.8.1783 + 1.8.1787 ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS diff --git a/Kiwix-iOSWidgets/Bookmarks/Info.plist b/Kiwix-iOSWidgets/Bookmarks/Info.plist index cfebcc7a..f33f26eb 100644 --- a/Kiwix-iOSWidgets/Bookmarks/Info.plist +++ b/Kiwix-iOSWidgets/Bookmarks/Info.plist @@ -21,7 +21,7 @@ CFBundleSignature ???? CFBundleVersion - 1.8.1783 + 1.8.1787 NSExtension NSExtensionMainStoryboard