mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
- Update to Chromium revision 133430.
- Move custom scheme registration to CefApp::OnRegisterCustomSchemes(). This is required by the introduction of ContentClient::AddAdditionalSchemes() and fixes a race condition when registering standard schemes in different processes. - Execute V8 functions using V8Proxy. This is required for inspector instrumentation to work correctly and fixes an assertion in WebCore related to V8RecursionScope. - Enable verbose V8 TryCatch logging. - Mac: Expose UnderlayOpenGLHostingWindow interface that should be used for all CEF windows. - Add CefSettings.remote_debugging_port option. git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@602 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
//
|
||||
|
||||
#include "libcef_dll/cpptoc/command_line_cpptoc.h"
|
||||
#include "libcef_dll/cpptoc/scheme_registrar_cpptoc.h"
|
||||
#include "libcef_dll/ctocpp/app_ctocpp.h"
|
||||
#include "libcef_dll/ctocpp/proxy_handler_ctocpp.h"
|
||||
#include "libcef_dll/ctocpp/render_process_handler_ctocpp.h"
|
||||
@@ -38,6 +39,23 @@ void CefAppCToCpp::OnBeforeCommandLineProcessing(const CefString& process_type,
|
||||
CefCommandLineCppToC::Wrap(command_line));
|
||||
}
|
||||
|
||||
void CefAppCToCpp::OnRegisterCustomSchemes(
|
||||
CefRefPtr<CefSchemeRegistrar> registrar) {
|
||||
if (CEF_MEMBER_MISSING(struct_, on_register_custom_schemes))
|
||||
return;
|
||||
|
||||
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
||||
|
||||
// Verify param: registrar; type: refptr_diff
|
||||
DCHECK(registrar.get());
|
||||
if (!registrar.get())
|
||||
return;
|
||||
|
||||
// Execute
|
||||
struct_->on_register_custom_schemes(struct_,
|
||||
CefSchemeRegistrarCppToC::Wrap(registrar));
|
||||
}
|
||||
|
||||
CefRefPtr<CefRenderProcessHandler> CefAppCToCpp::GetRenderProcessHandler() {
|
||||
if (CEF_MEMBER_MISSING(struct_, get_render_process_handler))
|
||||
return NULL;
|
||||
|
@@ -34,6 +34,8 @@ class CefAppCToCpp
|
||||
// CefApp methods
|
||||
virtual void OnBeforeCommandLineProcessing(const CefString& process_type,
|
||||
CefRefPtr<CefCommandLine> command_line) OVERRIDE;
|
||||
virtual void OnRegisterCustomSchemes(
|
||||
CefRefPtr<CefSchemeRegistrar> registrar) OVERRIDE;
|
||||
virtual CefRefPtr<CefRenderProcessHandler> GetRenderProcessHandler() OVERRIDE;
|
||||
virtual CefRefPtr<CefResourceBundleHandler> GetResourceBundleHandler(
|
||||
) OVERRIDE;
|
||||
|
@@ -198,24 +198,24 @@ void CefFrameCToCpp::LoadString(const CefString& string_val,
|
||||
url.GetStruct());
|
||||
}
|
||||
|
||||
void CefFrameCToCpp::ExecuteJavaScript(const CefString& jsCode,
|
||||
const CefString& scriptUrl, int startLine) {
|
||||
void CefFrameCToCpp::ExecuteJavaScript(const CefString& code,
|
||||
const CefString& script_url, int start_line) {
|
||||
if (CEF_MEMBER_MISSING(struct_, execute_java_script))
|
||||
return;
|
||||
|
||||
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
||||
|
||||
// Verify param: jsCode; type: string_byref_const
|
||||
DCHECK(!jsCode.empty());
|
||||
if (jsCode.empty())
|
||||
// Verify param: code; type: string_byref_const
|
||||
DCHECK(!code.empty());
|
||||
if (code.empty())
|
||||
return;
|
||||
// Unverified params: scriptUrl
|
||||
// Unverified params: script_url
|
||||
|
||||
// Execute
|
||||
struct_->execute_java_script(struct_,
|
||||
jsCode.GetStruct(),
|
||||
scriptUrl.GetStruct(),
|
||||
startLine);
|
||||
code.GetStruct(),
|
||||
script_url.GetStruct(),
|
||||
start_line);
|
||||
}
|
||||
|
||||
bool CefFrameCToCpp::IsMain() {
|
||||
|
@@ -51,8 +51,8 @@ class CefFrameCToCpp
|
||||
virtual void LoadURL(const CefString& url) OVERRIDE;
|
||||
virtual void LoadString(const CefString& string_val,
|
||||
const CefString& url) OVERRIDE;
|
||||
virtual void ExecuteJavaScript(const CefString& jsCode,
|
||||
const CefString& scriptUrl, int startLine) OVERRIDE;
|
||||
virtual void ExecuteJavaScript(const CefString& code,
|
||||
const CefString& script_url, int start_line) OVERRIDE;
|
||||
virtual bool IsMain() OVERRIDE;
|
||||
virtual bool IsFocused() OVERRIDE;
|
||||
virtual CefString GetName() OVERRIDE;
|
||||
|
46
libcef_dll/ctocpp/scheme_registrar_ctocpp.cc
Normal file
46
libcef_dll/ctocpp/scheme_registrar_ctocpp.cc
Normal file
@@ -0,0 +1,46 @@
|
||||
// Copyright (c) 2012 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/ctocpp/scheme_registrar_ctocpp.h"
|
||||
|
||||
|
||||
// VIRTUAL METHODS - Body may be edited by hand.
|
||||
|
||||
bool CefSchemeRegistrarCToCpp::AddCustomScheme(const CefString& scheme_name,
|
||||
bool is_standard, bool is_local, bool is_display_isolated) {
|
||||
if (CEF_MEMBER_MISSING(struct_, add_custom_scheme))
|
||||
return false;
|
||||
|
||||
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
|
||||
|
||||
// Verify param: scheme_name; type: string_byref_const
|
||||
DCHECK(!scheme_name.empty());
|
||||
if (scheme_name.empty())
|
||||
return false;
|
||||
|
||||
// Execute
|
||||
int _retval = struct_->add_custom_scheme(struct_,
|
||||
scheme_name.GetStruct(),
|
||||
is_standard,
|
||||
is_local,
|
||||
is_display_isolated);
|
||||
|
||||
// Return type: bool
|
||||
return _retval?true:false;
|
||||
}
|
||||
|
||||
|
||||
#ifndef NDEBUG
|
||||
template<> long CefCToCpp<CefSchemeRegistrarCToCpp, CefSchemeRegistrar,
|
||||
cef_scheme_registrar_t>::DebugObjCt = 0;
|
||||
#endif
|
||||
|
43
libcef_dll/ctocpp/scheme_registrar_ctocpp.h
Normal file
43
libcef_dll/ctocpp/scheme_registrar_ctocpp.h
Normal file
@@ -0,0 +1,43 @@
|
||||
// Copyright (c) 2012 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.
|
||||
//
|
||||
|
||||
#ifndef CEF_LIBCEF_DLL_CTOCPP_SCHEME_REGISTRAR_CTOCPP_H_
|
||||
#define CEF_LIBCEF_DLL_CTOCPP_SCHEME_REGISTRAR_CTOCPP_H_
|
||||
#pragma once
|
||||
|
||||
#ifndef USING_CEF_SHARED
|
||||
#pragma message("Warning: "__FILE__" may be accessed wrapper-side only")
|
||||
#else // USING_CEF_SHARED
|
||||
|
||||
#include "include/cef_scheme.h"
|
||||
#include "include/capi/cef_scheme_capi.h"
|
||||
#include "libcef_dll/ctocpp/ctocpp.h"
|
||||
|
||||
// Wrap a C structure with a C++ class.
|
||||
// This class may be instantiated and accessed wrapper-side only.
|
||||
class CefSchemeRegistrarCToCpp
|
||||
: public CefCToCpp<CefSchemeRegistrarCToCpp, CefSchemeRegistrar,
|
||||
cef_scheme_registrar_t> {
|
||||
public:
|
||||
explicit CefSchemeRegistrarCToCpp(cef_scheme_registrar_t* str)
|
||||
: CefCToCpp<CefSchemeRegistrarCToCpp, CefSchemeRegistrar,
|
||||
cef_scheme_registrar_t>(str) {}
|
||||
virtual ~CefSchemeRegistrarCToCpp() {}
|
||||
|
||||
// CefSchemeRegistrar methods
|
||||
virtual bool AddCustomScheme(const CefString& scheme_name, bool is_standard,
|
||||
bool is_local, bool is_display_isolated) OVERRIDE;
|
||||
};
|
||||
|
||||
#endif // USING_CEF_SHARED
|
||||
#endif // CEF_LIBCEF_DLL_CTOCPP_SCHEME_REGISTRAR_CTOCPP_H_
|
||||
|
Reference in New Issue
Block a user