summaryrefslogtreecommitdiffstats
path: root/src/webview/qwebview_darwin.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/webview/qwebview_darwin.mm')
-rw-r--r--src/webview/qwebview_darwin.mm9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/webview/qwebview_darwin.mm b/src/webview/qwebview_darwin.mm
index 45add1d..ff9dc4d 100644
--- a/src/webview/qwebview_darwin.mm
+++ b/src/webview/qwebview_darwin.mm
@@ -253,7 +253,14 @@ void QDarwinWebViewPrivate::setUrl(const QUrl &url)
{
if (url.isValid()) {
requestFrameCount = 0;
- [wkWebView loadRequest:[NSURLRequest requestWithURL:url.toNSURL()]];
+ if (!url.isLocalFile()) {
+ [wkWebView loadRequest:[NSURLRequest requestWithURL:url.toNSURL()]];
+ } else {
+ // We need to pass local files via loadFileURL and the read access should cover
+ // the directory that the file is in, to facilitate loading referenced images etc
+ [wkWebView loadFileURL:url.toNSURL()
+ allowingReadAccessToURL:QUrl(url.toString(QUrl::RemoveFilename)).toNSURL()];
+ }
}
}