Implement AddUserScript() for WKWebView backend
This commit is contained in:
@@ -91,6 +91,9 @@ public:
|
|||||||
bool RunScript(const wxString& javascript, wxString* output = NULL) const wxOVERRIDE;
|
bool RunScript(const wxString& javascript, wxString* output = NULL) const wxOVERRIDE;
|
||||||
virtual bool AddScriptMessageHandler(const wxString& name) wxOVERRIDE;
|
virtual bool AddScriptMessageHandler(const wxString& name) wxOVERRIDE;
|
||||||
virtual bool RemoveScriptMessageHandler(const wxString& name) wxOVERRIDE;
|
virtual bool RemoveScriptMessageHandler(const wxString& name) wxOVERRIDE;
|
||||||
|
virtual bool AddUserScript(const wxString& javascript,
|
||||||
|
wxWebViewUserScriptInjectionTime injectionTime = wxWEBVIEW_INJECT_AT_DOCUMENT_START) wxOVERRIDE;
|
||||||
|
virtual void RemoveAllUserScripts() wxOVERRIDE;
|
||||||
|
|
||||||
//Virtual Filesystem Support
|
//Virtual Filesystem Support
|
||||||
virtual void RegisterHandler(wxSharedPtr<wxWebViewHandler> handler) wxOVERRIDE;
|
virtual void RegisterHandler(wxSharedPtr<wxWebViewHandler> handler) wxOVERRIDE;
|
||||||
|
@@ -407,6 +407,23 @@ bool wxWebViewWebKit::RemoveScriptMessageHandler(const wxString& name)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool wxWebViewWebKit::AddUserScript(const wxString& javascript,
|
||||||
|
wxWebViewUserScriptInjectionTime injectionTime)
|
||||||
|
{
|
||||||
|
WKUserScript* userScript =
|
||||||
|
[[WKUserScript alloc] initWithSource:wxCFStringRef(javascript).AsNSString()
|
||||||
|
injectionTime:(injectionTime == wxWEBVIEW_INJECT_AT_DOCUMENT_START) ?
|
||||||
|
WKUserScriptInjectionTimeAtDocumentStart : WKUserScriptInjectionTimeAtDocumentEnd
|
||||||
|
forMainFrameOnly:NO];
|
||||||
|
[m_webView.configuration.userContentController addUserScript:userScript];
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void wxWebViewWebKit::RemoveAllUserScripts()
|
||||||
|
{
|
||||||
|
[m_webView.configuration.userContentController removeAllUserScripts];
|
||||||
|
}
|
||||||
|
|
||||||
void wxWebViewWebKit::LoadURL(const wxString& url)
|
void wxWebViewWebKit::LoadURL(const wxString& url)
|
||||||
{
|
{
|
||||||
[m_webView loadRequest:[NSURLRequest requestWithURL:
|
[m_webView loadRequest:[NSURLRequest requestWithURL:
|
||||||
|
Reference in New Issue
Block a user