mirror of
https://github.com/Ranchero-Software/NetNewsWire
synced 2025-08-12 06:26:36 +00:00
Merge branch 'pr/1033'
This commit is contained in:
@@ -104,7 +104,13 @@ final class DetailWebViewController: NSViewController, WKUIDelegate {
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(webInspectorEnabledDidChange(_:)), name: .WebInspectorEnabledDidChange, object: nil)
|
||||
#endif
|
||||
|
||||
reloadHTML()
|
||||
webView.loadHTMLString(template(), baseURL: nil)
|
||||
}
|
||||
|
||||
func template() -> String {
|
||||
let path = Bundle.main.path(forResource: "page", ofType: "html")!
|
||||
let s = try! NSString(contentsOfFile: path, encoding: String.Encoding.utf8.rawValue)
|
||||
return s as String
|
||||
}
|
||||
|
||||
// MARK: Scrolling
|
||||
@@ -166,6 +172,9 @@ extension DetailWebViewController: WKNavigationDelegate {
|
||||
}
|
||||
|
||||
// MARK: - Private
|
||||
struct TemplateData: Codable {
|
||||
let body: String
|
||||
}
|
||||
|
||||
private extension DetailWebViewController {
|
||||
|
||||
@@ -183,8 +192,17 @@ private extension DetailWebViewController {
|
||||
case .extracted(let article, let extractedArticle):
|
||||
html = ArticleRenderer.articleHTML(article: article, extractedArticle: extractedArticle, style: style)
|
||||
}
|
||||
|
||||
let templateData = TemplateData(body: html)
|
||||
|
||||
let encoder = JSONEncoder()
|
||||
var render = "error();"
|
||||
if let data = try? encoder.encode(templateData) {
|
||||
let json = String(data: data, encoding: .utf8)!
|
||||
render = "render(\(json));"
|
||||
}
|
||||
|
||||
webView.loadHTMLString(html, baseURL: nil)
|
||||
webView.evaluateJavaScript(render)
|
||||
}
|
||||
|
||||
func fetchScrollInfo(_ callback: @escaping (ScrollInfo?) -> Void) {
|
||||
|
||||
Reference in New Issue
Block a user