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;
|
||||
virtual bool AddScriptMessageHandler(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 void RegisterHandler(wxSharedPtr<wxWebViewHandler> handler) wxOVERRIDE;
|
||||
|
@@ -407,6 +407,23 @@ bool wxWebViewWebKit::RemoveScriptMessageHandler(const wxString& name)
|
||||
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)
|
||||
{
|
||||
[m_webView loadRequest:[NSURLRequest requestWithURL:
|
||||
|
Reference in New Issue
Block a user