mirror of
https://github.com/atom/atom.git
synced 2026-01-25 14:59:03 -05:00
This adds support for accessing native extensions in web workers, though it may not work quite how we need it to just yet. Figured we'd bank an upgrade anyway.
394 lines
12 KiB
C++
394 lines
12 KiB
C++
// Copyright (c) 2013 The Chromium Embedded Framework Authors. All rights
|
|
// reserved. Use of this source code is governed by a BSD-style license that
|
|
// can be found in the LICENSE file.
|
|
//
|
|
// ---------------------------------------------------------------------------
|
|
//
|
|
// This file was generated by the CEF translator tool. If making changes by
|
|
// hand only do so within the body of existing method and function
|
|
// implementations. See the translator.README.txt file in the tools directory
|
|
// for more information.
|
|
//
|
|
|
|
#include "libcef_dll/cpptoc/render_process_handler_cpptoc.h"
|
|
#include "libcef_dll/ctocpp/browser_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/domnode_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/frame_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/list_value_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/process_message_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/request_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/v8context_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/v8exception_ctocpp.h"
|
|
#include "libcef_dll/ctocpp/v8stack_trace_ctocpp.h"
|
|
|
|
|
|
// MEMBER FUNCTIONS - Body may be edited by hand.
|
|
|
|
void CEF_CALLBACK render_process_handler_on_render_thread_created(
|
|
struct _cef_render_process_handler_t* self,
|
|
struct _cef_list_value_t* extra_info) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: extra_info; type: refptr_diff
|
|
DCHECK(extra_info);
|
|
if (!extra_info)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnRenderThreadCreated(
|
|
CefListValueCToCpp::Wrap(extra_info));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_web_kit_initialized(
|
|
struct _cef_render_process_handler_t* self) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnWebKitInitialized();
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_browser_created(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnBrowserCreated(
|
|
CefBrowserCToCpp::Wrap(browser));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_browser_destroyed(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnBrowserDestroyed(
|
|
CefBrowserCToCpp::Wrap(browser));
|
|
}
|
|
|
|
int CEF_CALLBACK render_process_handler_on_before_navigation(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
cef_frame_t* frame, struct _cef_request_t* request,
|
|
enum cef_navigation_type_t navigation_type, int is_redirect) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return 0;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return 0;
|
|
// Verify param: frame; type: refptr_diff
|
|
DCHECK(frame);
|
|
if (!frame)
|
|
return 0;
|
|
// Verify param: request; type: refptr_diff
|
|
DCHECK(request);
|
|
if (!request)
|
|
return 0;
|
|
|
|
// Execute
|
|
bool _retval = CefRenderProcessHandlerCppToC::Get(self)->OnBeforeNavigation(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
CefFrameCToCpp::Wrap(frame),
|
|
CefRequestCToCpp::Wrap(request),
|
|
navigation_type,
|
|
is_redirect?true:false);
|
|
|
|
// Return type: bool
|
|
return _retval;
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_context_created(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
cef_frame_t* frame, struct _cef_v8context_t* context) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
// Verify param: frame; type: refptr_diff
|
|
DCHECK(frame);
|
|
if (!frame)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnContextCreated(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
CefFrameCToCpp::Wrap(frame),
|
|
CefV8ContextCToCpp::Wrap(context));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_context_released(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
cef_frame_t* frame, struct _cef_v8context_t* context) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
// Verify param: frame; type: refptr_diff
|
|
DCHECK(frame);
|
|
if (!frame)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnContextReleased(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
CefFrameCToCpp::Wrap(frame),
|
|
CefV8ContextCToCpp::Wrap(context));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_uncaught_exception(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
cef_frame_t* frame, struct _cef_v8context_t* context,
|
|
struct _cef_v8exception_t* exception,
|
|
struct _cef_v8stack_trace_t* stackTrace) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
// Verify param: frame; type: refptr_diff
|
|
DCHECK(frame);
|
|
if (!frame)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
// Verify param: exception; type: refptr_diff
|
|
DCHECK(exception);
|
|
if (!exception)
|
|
return;
|
|
// Verify param: stackTrace; type: refptr_diff
|
|
DCHECK(stackTrace);
|
|
if (!stackTrace)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnUncaughtException(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
CefFrameCToCpp::Wrap(frame),
|
|
CefV8ContextCToCpp::Wrap(context),
|
|
CefV8ExceptionCToCpp::Wrap(exception),
|
|
CefV8StackTraceCToCpp::Wrap(stackTrace));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_worker_context_created(
|
|
struct _cef_render_process_handler_t* self, int worker_id,
|
|
const cef_string_t* url, struct _cef_v8context_t* context) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: url; type: string_byref_const
|
|
DCHECK(url);
|
|
if (!url)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnWorkerContextCreated(
|
|
worker_id,
|
|
CefString(url),
|
|
CefV8ContextCToCpp::Wrap(context));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_worker_context_released(
|
|
struct _cef_render_process_handler_t* self, int worker_id,
|
|
const cef_string_t* url, struct _cef_v8context_t* context) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: url; type: string_byref_const
|
|
DCHECK(url);
|
|
if (!url)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnWorkerContextReleased(
|
|
worker_id,
|
|
CefString(url),
|
|
CefV8ContextCToCpp::Wrap(context));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_worker_uncaught_exception(
|
|
struct _cef_render_process_handler_t* self, int worker_id,
|
|
const cef_string_t* url, struct _cef_v8context_t* context,
|
|
struct _cef_v8exception_t* exception,
|
|
struct _cef_v8stack_trace_t* stackTrace) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: url; type: string_byref_const
|
|
DCHECK(url);
|
|
if (!url)
|
|
return;
|
|
// Verify param: context; type: refptr_diff
|
|
DCHECK(context);
|
|
if (!context)
|
|
return;
|
|
// Verify param: exception; type: refptr_diff
|
|
DCHECK(exception);
|
|
if (!exception)
|
|
return;
|
|
// Verify param: stackTrace; type: refptr_diff
|
|
DCHECK(stackTrace);
|
|
if (!stackTrace)
|
|
return;
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnWorkerUncaughtException(
|
|
worker_id,
|
|
CefString(url),
|
|
CefV8ContextCToCpp::Wrap(context),
|
|
CefV8ExceptionCToCpp::Wrap(exception),
|
|
CefV8StackTraceCToCpp::Wrap(stackTrace));
|
|
}
|
|
|
|
void CEF_CALLBACK render_process_handler_on_focused_node_changed(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
cef_frame_t* frame, cef_domnode_t* node) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return;
|
|
// Unverified params: frame, node
|
|
|
|
// Execute
|
|
CefRenderProcessHandlerCppToC::Get(self)->OnFocusedNodeChanged(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
CefFrameCToCpp::Wrap(frame),
|
|
CefDOMNodeCToCpp::Wrap(node));
|
|
}
|
|
|
|
int CEF_CALLBACK render_process_handler_on_process_message_received(
|
|
struct _cef_render_process_handler_t* self, cef_browser_t* browser,
|
|
enum cef_process_id_t source_process, cef_process_message_t* message) {
|
|
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
|
|
|
DCHECK(self);
|
|
if (!self)
|
|
return 0;
|
|
// Verify param: browser; type: refptr_diff
|
|
DCHECK(browser);
|
|
if (!browser)
|
|
return 0;
|
|
// Verify param: message; type: refptr_diff
|
|
DCHECK(message);
|
|
if (!message)
|
|
return 0;
|
|
|
|
// Execute
|
|
bool _retval = CefRenderProcessHandlerCppToC::Get(
|
|
self)->OnProcessMessageReceived(
|
|
CefBrowserCToCpp::Wrap(browser),
|
|
source_process,
|
|
CefProcessMessageCToCpp::Wrap(message));
|
|
|
|
// Return type: bool
|
|
return _retval;
|
|
}
|
|
|
|
|
|
// CONSTRUCTOR - Do not edit by hand.
|
|
|
|
CefRenderProcessHandlerCppToC::CefRenderProcessHandlerCppToC(
|
|
CefRenderProcessHandler* cls)
|
|
: CefCppToC<CefRenderProcessHandlerCppToC, CefRenderProcessHandler,
|
|
cef_render_process_handler_t>(cls) {
|
|
struct_.struct_.on_render_thread_created =
|
|
render_process_handler_on_render_thread_created;
|
|
struct_.struct_.on_web_kit_initialized =
|
|
render_process_handler_on_web_kit_initialized;
|
|
struct_.struct_.on_browser_created =
|
|
render_process_handler_on_browser_created;
|
|
struct_.struct_.on_browser_destroyed =
|
|
render_process_handler_on_browser_destroyed;
|
|
struct_.struct_.on_before_navigation =
|
|
render_process_handler_on_before_navigation;
|
|
struct_.struct_.on_context_created =
|
|
render_process_handler_on_context_created;
|
|
struct_.struct_.on_context_released =
|
|
render_process_handler_on_context_released;
|
|
struct_.struct_.on_uncaught_exception =
|
|
render_process_handler_on_uncaught_exception;
|
|
struct_.struct_.on_worker_context_created =
|
|
render_process_handler_on_worker_context_created;
|
|
struct_.struct_.on_worker_context_released =
|
|
render_process_handler_on_worker_context_released;
|
|
struct_.struct_.on_worker_uncaught_exception =
|
|
render_process_handler_on_worker_uncaught_exception;
|
|
struct_.struct_.on_focused_node_changed =
|
|
render_process_handler_on_focused_node_changed;
|
|
struct_.struct_.on_process_message_received =
|
|
render_process_handler_on_process_message_received;
|
|
}
|
|
|
|
#ifndef NDEBUG
|
|
template<> long CefCppToC<CefRenderProcessHandlerCppToC,
|
|
CefRenderProcessHandler, cef_render_process_handler_t>::DebugObjCt = 0;
|
|
#endif
|
|
|