Implement AddUserScript() for GTK
This commit is contained in:
@@ -119,6 +119,9 @@ public:
|
|||||||
virtual bool RunScript(const wxString& javascript, wxString* output = NULL) const wxOVERRIDE;
|
virtual 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;
|
||||||
|
@@ -1317,6 +1317,29 @@ bool wxWebViewWebKit::RemoveScriptMessageHandler(const wxString& name)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool wxWebViewWebKit::AddUserScript(const wxString& javascript,
|
||||||
|
wxWebViewUserScriptInjectionTime injectionTime)
|
||||||
|
{
|
||||||
|
WebKitUserScript* userScript = webkit_user_script_new(
|
||||||
|
javascript.utf8_str(),
|
||||||
|
WEBKIT_USER_CONTENT_INJECT_ALL_FRAMES,
|
||||||
|
(injectionTime == wxWEBVIEW_INJECT_AT_DOCUMENT_START) ?
|
||||||
|
WEBKIT_USER_SCRIPT_INJECT_AT_DOCUMENT_START : WEBKIT_USER_SCRIPT_INJECT_AT_DOCUMENT_END,
|
||||||
|
NULL, NULL
|
||||||
|
);
|
||||||
|
WebKitUserContentManager *ucm = webkit_web_view_get_user_content_manager(m_web_view);
|
||||||
|
webkit_user_content_manager_add_script(ucm, userScript);
|
||||||
|
webkit_user_script_unref(userScript);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void wxWebViewWebKit::RemoveAllUserScripts()
|
||||||
|
{
|
||||||
|
WebKitUserContentManager *ucm = webkit_web_view_get_user_content_manager(m_web_view);
|
||||||
|
webkit_user_content_manager_remove_all_scripts(ucm);
|
||||||
|
}
|
||||||
|
|
||||||
void wxWebViewWebKit::RegisterHandler(wxSharedPtr<wxWebViewHandler> handler)
|
void wxWebViewWebKit::RegisterHandler(wxSharedPtr<wxWebViewHandler> handler)
|
||||||
{
|
{
|
||||||
m_handlerList.push_back(handler);
|
m_handlerList.push_back(handler);
|
||||||
|
Reference in New Issue
Block a user