Initial changes to allow use of CefLoadHandler in the render process (issue #1077).

- Move OnLoadingStateChange from CefDisplayHandler to CefLoadHandler.
- Move OnRenderProcessTerminated and OnPluginCrashed from CefLoadHandler to CefRequestHandler.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1441 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2013-09-12 20:34:18 +00:00
parent 4eafb2ea24
commit c577293d96
18 changed files with 286 additions and 308 deletions

View File

@@ -17,27 +17,6 @@
// VIRTUAL METHODS - Body may be edited by hand.
void CefDisplayHandlerCToCpp::OnLoadingStateChange(
CefRefPtr<CefBrowser> browser, bool isLoading, bool canGoBack,
bool canGoForward) {
if (CEF_MEMBER_MISSING(struct_, on_loading_state_change))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Execute
struct_->on_loading_state_change(struct_,
CefBrowserCppToC::Wrap(browser),
isLoading,
canGoBack,
canGoForward);
}
void CefDisplayHandlerCToCpp::OnAddressChange(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame, const CefString& url) {
if (CEF_MEMBER_MISSING(struct_, on_address_change))

View File

@@ -34,8 +34,6 @@ class CefDisplayHandlerCToCpp
virtual ~CefDisplayHandlerCToCpp() {}
// CefDisplayHandler methods
virtual void OnLoadingStateChange(CefRefPtr<CefBrowser> browser,
bool isLoading, bool canGoBack, bool canGoForward) OVERRIDE;
virtual void OnAddressChange(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame, const CefString& url) OVERRIDE;
virtual void OnTitleChange(CefRefPtr<CefBrowser> browser,

View File

@@ -17,6 +17,26 @@
// VIRTUAL METHODS - Body may be edited by hand.
void CefLoadHandlerCToCpp::OnLoadingStateChange(CefRefPtr<CefBrowser> browser,
bool isLoading, bool canGoBack, bool canGoForward) {
if (CEF_MEMBER_MISSING(struct_, on_loading_state_change))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Execute
struct_->on_loading_state_change(struct_,
CefBrowserCppToC::Wrap(browser),
isLoading,
canGoBack,
canGoForward);
}
void CefLoadHandlerCToCpp::OnLoadStart(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame) {
if (CEF_MEMBER_MISSING(struct_, on_load_start))
@@ -93,46 +113,6 @@ void CefLoadHandlerCToCpp::OnLoadError(CefRefPtr<CefBrowser> browser,
failedUrl.GetStruct());
}
void CefLoadHandlerCToCpp::OnRenderProcessTerminated(
CefRefPtr<CefBrowser> browser, TerminationStatus status) {
if (CEF_MEMBER_MISSING(struct_, on_render_process_terminated))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Execute
struct_->on_render_process_terminated(struct_,
CefBrowserCppToC::Wrap(browser),
status);
}
void CefLoadHandlerCToCpp::OnPluginCrashed(CefRefPtr<CefBrowser> browser,
const CefString& plugin_path) {
if (CEF_MEMBER_MISSING(struct_, on_plugin_crashed))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Verify param: plugin_path; type: string_byref_const
DCHECK(!plugin_path.empty());
if (plugin_path.empty())
return;
// Execute
struct_->on_plugin_crashed(struct_,
CefBrowserCppToC::Wrap(browser),
plugin_path.GetStruct());
}
#ifndef NDEBUG
template<> long CefCToCpp<CefLoadHandlerCToCpp, CefLoadHandler,

View File

@@ -34,6 +34,8 @@ class CefLoadHandlerCToCpp
virtual ~CefLoadHandlerCToCpp() {}
// CefLoadHandler methods
virtual void OnLoadingStateChange(CefRefPtr<CefBrowser> browser,
bool isLoading, bool canGoBack, bool canGoForward) OVERRIDE;
virtual void OnLoadStart(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame) OVERRIDE;
virtual void OnLoadEnd(CefRefPtr<CefBrowser> browser,
@@ -41,10 +43,6 @@ class CefLoadHandlerCToCpp
virtual void OnLoadError(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame, ErrorCode errorCode,
const CefString& errorText, const CefString& failedUrl) OVERRIDE;
virtual void OnRenderProcessTerminated(CefRefPtr<CefBrowser> browser,
TerminationStatus status) OVERRIDE;
virtual void OnPluginCrashed(CefRefPtr<CefBrowser> browser,
const CefString& plugin_path) OVERRIDE;
};
#endif // BUILDING_CEF_SHARED

View File

@@ -252,6 +252,33 @@ void CefRequestHandlerCToCpp::OnProtocolExecution(CefRefPtr<CefBrowser> browser,
allow_os_execution = allow_os_executionInt?true:false;
}
bool CefRequestHandlerCToCpp::OnCertificateError(cef_errorcode_t cert_error,
const CefString& request_url,
CefRefPtr<CefAllowCertificateErrorCallback> callback) {
if (CEF_MEMBER_MISSING(struct_, on_certificate_error))
return false;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: request_url; type: string_byref_const
DCHECK(!request_url.empty());
if (request_url.empty())
return false;
// Verify param: callback; type: refptr_diff
DCHECK(callback.get());
if (!callback.get())
return false;
// Execute
int _retval = struct_->on_certificate_error(struct_,
cert_error,
request_url.GetStruct(),
CefAllowCertificateErrorCallbackCppToC::Wrap(callback));
// Return type: bool
return _retval?true:false;
}
bool CefRequestHandlerCToCpp::OnBeforePluginLoad(CefRefPtr<CefBrowser> browser,
const CefString& url, const CefString& policy_url,
CefRefPtr<CefWebPluginInfo> info) {
@@ -281,31 +308,44 @@ bool CefRequestHandlerCToCpp::OnBeforePluginLoad(CefRefPtr<CefBrowser> browser,
return _retval?true:false;
}
bool CefRequestHandlerCToCpp::OnCertificateError(cef_errorcode_t cert_error,
const CefString& request_url,
CefRefPtr<CefAllowCertificateErrorCallback> callback) {
if (CEF_MEMBER_MISSING(struct_, on_certificate_error))
return false;
void CefRequestHandlerCToCpp::OnPluginCrashed(CefRefPtr<CefBrowser> browser,
const CefString& plugin_path) {
if (CEF_MEMBER_MISSING(struct_, on_plugin_crashed))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: request_url; type: string_byref_const
DCHECK(!request_url.empty());
if (request_url.empty())
return false;
// Verify param: callback; type: refptr_diff
DCHECK(callback.get());
if (!callback.get())
return false;
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Verify param: plugin_path; type: string_byref_const
DCHECK(!plugin_path.empty());
if (plugin_path.empty())
return;
// Execute
int _retval = struct_->on_certificate_error(struct_,
cert_error,
request_url.GetStruct(),
CefAllowCertificateErrorCallbackCppToC::Wrap(callback));
struct_->on_plugin_crashed(struct_,
CefBrowserCppToC::Wrap(browser),
plugin_path.GetStruct());
}
// Return type: bool
return _retval?true:false;
void CefRequestHandlerCToCpp::OnRenderProcessTerminated(
CefRefPtr<CefBrowser> browser, TerminationStatus status) {
if (CEF_MEMBER_MISSING(struct_, on_render_process_terminated))
return;
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
// Verify param: browser; type: refptr_diff
DCHECK(browser.get());
if (!browser.get())
return;
// Execute
struct_->on_render_process_terminated(struct_,
CefBrowserCppToC::Wrap(browser),
status);
}

View File

@@ -54,12 +54,16 @@ class CefRequestHandlerCToCpp
CefRefPtr<CefQuotaCallback> callback) OVERRIDE;
virtual void OnProtocolExecution(CefRefPtr<CefBrowser> browser,
const CefString& url, bool& allow_os_execution) OVERRIDE;
virtual bool OnBeforePluginLoad(CefRefPtr<CefBrowser> browser,
const CefString& url, const CefString& policy_url,
CefRefPtr<CefWebPluginInfo> info) OVERRIDE;
virtual bool OnCertificateError(cef_errorcode_t cert_error,
const CefString& request_url,
CefRefPtr<CefAllowCertificateErrorCallback> callback) OVERRIDE;
virtual bool OnBeforePluginLoad(CefRefPtr<CefBrowser> browser,
const CefString& url, const CefString& policy_url,
CefRefPtr<CefWebPluginInfo> info) OVERRIDE;
virtual void OnPluginCrashed(CefRefPtr<CefBrowser> browser,
const CefString& plugin_path) OVERRIDE;
virtual void OnRenderProcessTerminated(CefRefPtr<CefBrowser> browser,
TerminationStatus status) OVERRIDE;
};
#endif // BUILDING_CEF_SHARED