mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Compare commits
41 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
97389a92ee | ||
|
73d380a8ec | ||
|
5b69bde650 | ||
|
178f101bfb | ||
|
cdcdfa9991 | ||
|
558741c384 | ||
|
067d91504f | ||
|
763ecb484f | ||
|
4c4ae85089 | ||
|
a6a3da2d53 | ||
|
80258004b9 | ||
|
0ba0378d19 | ||
|
e5105d4e09 | ||
|
d513424026 | ||
|
06fde9995d | ||
|
271bb8bc31 | ||
|
e7450f2fbc | ||
|
872fbc07b5 | ||
|
ebb70f94e8 | ||
|
1758b744b2 | ||
|
0ab2e20d44 | ||
|
d6b6d11ec4 | ||
|
3561b8dfdb | ||
|
da2209a6d8 | ||
|
df1d25f0a9 | ||
|
6d7f90ec51 | ||
|
4bafa3e155 | ||
|
8dfe9574c4 | ||
|
d22b7ed179 | ||
|
bb4812691e | ||
|
ff7f70442f | ||
|
288d2eb2e6 | ||
|
650a49b0a7 | ||
|
f7cc01059b | ||
|
0da94acdf2 | ||
|
5c07d06435 | ||
|
e63e109489 | ||
|
bfdeccda52 | ||
|
cf91961ff2 | ||
|
de18fc4292 | ||
|
b4216db56c |
71
BUILD.gn
71
BUILD.gn
@@ -120,6 +120,7 @@ if (is_mac) {
|
|||||||
import("//build/config/mac/rules.gni")
|
import("//build/config/mac/rules.gni")
|
||||||
import("//build_overrides/v8.gni")
|
import("//build_overrides/v8.gni")
|
||||||
import("//build/mac/tweak_info_plist.gni")
|
import("//build/mac/tweak_info_plist.gni")
|
||||||
|
import("//build/util/version.gni")
|
||||||
import("//media/cdm/ppapi/cdm_paths.gni")
|
import("//media/cdm/ppapi/cdm_paths.gni")
|
||||||
}
|
}
|
||||||
if (is_win) {
|
if (is_win) {
|
||||||
@@ -164,8 +165,45 @@ if (is_mac) {
|
|||||||
#
|
#
|
||||||
|
|
||||||
if (is_mac) {
|
if (is_mac) {
|
||||||
# TODO(cef): Generate this value using version.py.
|
cef_commit_number = exec_script(
|
||||||
cef_version = "99.77.34.5"
|
"//cef/tools/commit_number.py",
|
||||||
|
[ rebase_path("//cef", root_build_dir) ],
|
||||||
|
"trim string", [])
|
||||||
|
|
||||||
|
cef_version_file = "//cef/VERSION"
|
||||||
|
|
||||||
|
# The tweak_info_plist.py script requires a version number with 4 parts. CEF
|
||||||
|
# uses a version number with 3 parts so just set the last part to 0.
|
||||||
|
cef_plist_version = exec_script(
|
||||||
|
"//build/util/version.py",
|
||||||
|
[
|
||||||
|
"-f",
|
||||||
|
rebase_path(cef_version_file, root_build_dir),
|
||||||
|
"-f",
|
||||||
|
rebase_path(chrome_version_file, root_build_dir),
|
||||||
|
"-t",
|
||||||
|
"@CEF_MAJOR@.@BUILD@.${cef_commit_number}.0",
|
||||||
|
],
|
||||||
|
"trim string",
|
||||||
|
[ cef_version_file, chrome_version_file ])
|
||||||
|
|
||||||
|
# Need to be creative to match dylib version formatting requirements.
|
||||||
|
cef_dylib_version = exec_script(
|
||||||
|
"//build/util/version.py",
|
||||||
|
[
|
||||||
|
"-f",
|
||||||
|
rebase_path(cef_version_file, root_build_dir),
|
||||||
|
"-f",
|
||||||
|
rebase_path(chrome_version_file, root_build_dir),
|
||||||
|
"-t",
|
||||||
|
"@CEF_MAJOR@${cef_commit_number}.@BUILD_HI@.@BUILD_LO@",
|
||||||
|
"-e",
|
||||||
|
"BUILD_HI=int(BUILD)/256",
|
||||||
|
"-e",
|
||||||
|
"BUILD_LO=int(BUILD)%256",
|
||||||
|
],
|
||||||
|
"trim string",
|
||||||
|
[ cef_version_file, chrome_version_file ])
|
||||||
}
|
}
|
||||||
|
|
||||||
# Read file lists from gypi files. The gypi_to_gn.py script does not support
|
# Read file lists from gypi files. The gypi_to_gn.py script does not support
|
||||||
@@ -426,6 +464,8 @@ static_library("libcef_static") {
|
|||||||
"libcef/common/content_client.h",
|
"libcef/common/content_client.h",
|
||||||
"libcef/common/crash_reporter_client.cc",
|
"libcef/common/crash_reporter_client.cc",
|
||||||
"libcef/common/crash_reporter_client.h",
|
"libcef/common/crash_reporter_client.h",
|
||||||
|
"libcef/common/crash_reporting.cc",
|
||||||
|
"libcef/common/crash_reporting.h",
|
||||||
"libcef/common/drag_data_impl.cc",
|
"libcef/common/drag_data_impl.cc",
|
||||||
"libcef/common/drag_data_impl.h",
|
"libcef/common/drag_data_impl.h",
|
||||||
"libcef/common/extensions/chrome_generated_schemas.cc",
|
"libcef/common/extensions/chrome_generated_schemas.cc",
|
||||||
@@ -558,6 +598,11 @@ static_library("libcef_static") {
|
|||||||
"//third_party/WebKit/public/web",
|
"//third_party/WebKit/public/web",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
public_deps = [
|
||||||
|
# Bring in feature flag defines.
|
||||||
|
"//cef/libcef/features",
|
||||||
|
]
|
||||||
|
|
||||||
deps = [
|
deps = [
|
||||||
# Generate pack files and associated CEF header files.
|
# Generate pack files and associated CEF header files.
|
||||||
":make_pack_header_resources",
|
":make_pack_header_resources",
|
||||||
@@ -633,7 +678,6 @@ static_library("libcef_static") {
|
|||||||
"//printing/features",
|
"//printing/features",
|
||||||
"//skia",
|
"//skia",
|
||||||
"//storage/browser",
|
"//storage/browser",
|
||||||
"//third_party/brotli",
|
|
||||||
"//third_party/cld",
|
"//third_party/cld",
|
||||||
"//third_party/hunspell",
|
"//third_party/hunspell",
|
||||||
"//third_party/leveldatabase",
|
"//third_party/leveldatabase",
|
||||||
@@ -679,6 +723,8 @@ static_library("libcef_static") {
|
|||||||
"libcef/browser/osr/browser_platform_delegate_osr_win.cc",
|
"libcef/browser/osr/browser_platform_delegate_osr_win.cc",
|
||||||
"libcef/browser/osr/browser_platform_delegate_osr_win.h",
|
"libcef/browser/osr/browser_platform_delegate_osr_win.h",
|
||||||
"libcef/browser/osr/render_widget_host_view_osr_win.cc",
|
"libcef/browser/osr/render_widget_host_view_osr_win.cc",
|
||||||
|
"libcef/common/crash_reporting_win.cc",
|
||||||
|
"libcef/common/crash_reporting_win.h",
|
||||||
|
|
||||||
# Part of //chrome/utility.
|
# Part of //chrome/utility.
|
||||||
"//chrome/utility/printing_handler.cc",
|
"//chrome/utility/printing_handler.cc",
|
||||||
@@ -687,7 +733,6 @@ static_library("libcef_static") {
|
|||||||
|
|
||||||
deps += [
|
deps += [
|
||||||
"//chrome_elf",
|
"//chrome_elf",
|
||||||
"//components/crash/content/app:run_as_crashpad_handler",
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -730,6 +775,10 @@ static_library("libcef_static") {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (is_win || is_mac) {
|
||||||
|
deps += [ "//third_party/crashpad/crashpad/handler:handler_lib" ]
|
||||||
|
}
|
||||||
|
|
||||||
if (use_x11) {
|
if (use_x11) {
|
||||||
deps += [ "//ui/events/devices/x11" ]
|
deps += [ "//ui/events/devices/x11" ]
|
||||||
}
|
}
|
||||||
@@ -1165,7 +1214,7 @@ if (is_mac) {
|
|||||||
"--keystone=0",
|
"--keystone=0",
|
||||||
"--scm=1",
|
"--scm=1",
|
||||||
"--version",
|
"--version",
|
||||||
cef_version,
|
cef_plist_version,
|
||||||
"--branding",
|
"--branding",
|
||||||
cef_framework_name,
|
cef_framework_name,
|
||||||
]
|
]
|
||||||
@@ -1252,7 +1301,13 @@ if (is_mac) {
|
|||||||
# on one of the executables. However install_name_tool only operates
|
# on one of the executables. However install_name_tool only operates
|
||||||
# in-place, which is problematic to express in GN. Instead, use rpath-based
|
# in-place, which is problematic to express in GN. Instead, use rpath-based
|
||||||
# loading.
|
# loading.
|
||||||
ldflags = [ "-Wl,-install_name,@rpath/Frameworks/$output_name.framework/$output_name" ]
|
ldflags = [
|
||||||
|
"-Wl,-install_name,@rpath/Frameworks/$output_name.framework/$output_name",
|
||||||
|
"-compatibility_version",
|
||||||
|
cef_dylib_version,
|
||||||
|
"-current_version",
|
||||||
|
cef_dylib_version,
|
||||||
|
]
|
||||||
|
|
||||||
if (is_component_build) {
|
if (is_component_build) {
|
||||||
# Set up the rpath for the framework so that it can find dylibs in the
|
# Set up the rpath for the framework so that it can find dylibs in the
|
||||||
@@ -1332,7 +1387,7 @@ if (is_mac) {
|
|||||||
"--keystone=0",
|
"--keystone=0",
|
||||||
"--scm=0",
|
"--scm=0",
|
||||||
"--version",
|
"--version",
|
||||||
cef_version,
|
cef_plist_version,
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1383,7 +1438,7 @@ if (is_mac) {
|
|||||||
args = [
|
args = [
|
||||||
"--scm=1",
|
"--scm=1",
|
||||||
"--version",
|
"--version",
|
||||||
cef_version,
|
cef_plist_version,
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -7,5 +7,5 @@
|
|||||||
# https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
|
# https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
|
||||||
|
|
||||||
{
|
{
|
||||||
'chromium_checkout': '3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a',
|
'chromium_checkout': 'refs/tags/56.0.2924.76',
|
||||||
}
|
}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2016 The Chromium Embedded Framework Authors. All rights
|
# Copyright (c) 2017 The Chromium Embedded Framework Authors. All rights
|
||||||
# reserved. Use of this source code is governed by a BSD-style license that
|
# reserved. Use of this source code is governed by a BSD-style license that
|
||||||
# can be found in the LICENSE file.
|
# can be found in the LICENSE file.
|
||||||
#
|
#
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
'include/cef_command_line.h',
|
'include/cef_command_line.h',
|
||||||
'include/cef_context_menu_handler.h',
|
'include/cef_context_menu_handler.h',
|
||||||
'include/cef_cookie.h',
|
'include/cef_cookie.h',
|
||||||
|
'include/cef_crash_util.h',
|
||||||
'include/cef_dialog_handler.h',
|
'include/cef_dialog_handler.h',
|
||||||
'include/cef_display_handler.h',
|
'include/cef_display_handler.h',
|
||||||
'include/cef_dom.h',
|
'include/cef_dom.h',
|
||||||
@@ -108,6 +109,7 @@
|
|||||||
'include/capi/cef_command_line_capi.h',
|
'include/capi/cef_command_line_capi.h',
|
||||||
'include/capi/cef_context_menu_handler_capi.h',
|
'include/capi/cef_context_menu_handler_capi.h',
|
||||||
'include/capi/cef_cookie_capi.h',
|
'include/capi/cef_cookie_capi.h',
|
||||||
|
'include/capi/cef_crash_util_capi.h',
|
||||||
'include/capi/cef_dialog_handler_capi.h',
|
'include/capi/cef_dialog_handler_capi.h',
|
||||||
'include/capi/cef_display_handler_capi.h',
|
'include/capi/cef_display_handler_capi.h',
|
||||||
'include/capi/cef_dom_capi.h',
|
'include/capi/cef_dom_capi.h',
|
||||||
|
@@ -193,6 +193,8 @@
|
|||||||
'tests/cefclient/browser/bytes_write_handler.cc',
|
'tests/cefclient/browser/bytes_write_handler.cc',
|
||||||
'tests/cefclient/browser/bytes_write_handler.h',
|
'tests/cefclient/browser/bytes_write_handler.h',
|
||||||
'tests/cefclient/browser/client_app_delegates_browser.cc',
|
'tests/cefclient/browser/client_app_delegates_browser.cc',
|
||||||
|
'tests/cefclient/browser/client_browser.cc',
|
||||||
|
'tests/cefclient/browser/client_browser.h',
|
||||||
'tests/cefclient/browser/client_handler.cc',
|
'tests/cefclient/browser/client_handler.cc',
|
||||||
'tests/cefclient/browser/client_handler.h',
|
'tests/cefclient/browser/client_handler.h',
|
||||||
'tests/cefclient/browser/client_handler_osr.cc',
|
'tests/cefclient/browser/client_handler_osr.cc',
|
||||||
|
@@ -268,7 +268,7 @@ if(OS_MACOSX)
|
|||||||
|
|
||||||
# Find the newest available base SDK.
|
# Find the newest available base SDK.
|
||||||
execute_process(COMMAND xcode-select --print-path OUTPUT_VARIABLE XCODE_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
|
execute_process(COMMAND xcode-select --print-path OUTPUT_VARIABLE XCODE_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
foreach(OS_VERSION 10.10 10.9 10.8 10.7)
|
foreach(OS_VERSION 10.11 10.10 10.9)
|
||||||
set(SDK "${XCODE_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${OS_VERSION}.sdk")
|
set(SDK "${XCODE_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${OS_VERSION}.sdk")
|
||||||
if(NOT "${CMAKE_OSX_SYSROOT}" AND EXISTS "${SDK}" AND IS_DIRECTORY "${SDK}")
|
if(NOT "${CMAKE_OSX_SYSROOT}" AND EXISTS "${SDK}" AND IS_DIRECTORY "${SDK}")
|
||||||
set(CMAKE_OSX_SYSROOT ${SDK})
|
set(CMAKE_OSX_SYSROOT ${SDK})
|
||||||
@@ -276,7 +276,7 @@ if(OS_MACOSX)
|
|||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
# Target SDK.
|
# Target SDK.
|
||||||
set(CEF_TARGET_SDK "10.7")
|
set(CEF_TARGET_SDK "10.9")
|
||||||
list(APPEND CEF_COMPILER_FLAGS
|
list(APPEND CEF_COMPILER_FLAGS
|
||||||
-mmacosx-version-min=${CEF_TARGET_SDK}
|
-mmacosx-version-min=${CEF_TARGET_SDK}
|
||||||
)
|
)
|
||||||
@@ -376,7 +376,7 @@ if(OS_WINDOWS)
|
|||||||
list(APPEND CEF_COMPILER_DEFINES
|
list(APPEND CEF_COMPILER_DEFINES
|
||||||
WIN32 _WIN32 _WINDOWS # Windows platform
|
WIN32 _WIN32 _WINDOWS # Windows platform
|
||||||
UNICODE _UNICODE # Unicode build
|
UNICODE _UNICODE # Unicode build
|
||||||
WINVER=0x0602 _WIN32_WINNT=0x602 # Targeting Windows 8
|
WINVER=0x0601 _WIN32_WINNT=0x601 # Targeting Windows 7
|
||||||
NOMINMAX # Use the standard's templated min/max
|
NOMINMAX # Use the standard's templated min/max
|
||||||
WIN32_LEAN_AND_MEAN # Exclude less common API declarations
|
WIN32_LEAN_AND_MEAN # Exclude less common API declarations
|
||||||
_HAS_EXCEPTIONS=0 # Disable exceptions
|
_HAS_EXCEPTIONS=0 # Disable exceptions
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
@@ -192,6 +192,14 @@ typedef struct _cef_context_menu_params_t {
|
|||||||
int (CEF_CALLBACK *has_image_contents)(
|
int (CEF_CALLBACK *has_image_contents)(
|
||||||
struct _cef_context_menu_params_t* self);
|
struct _cef_context_menu_params_t* self);
|
||||||
|
|
||||||
|
///
|
||||||
|
// Returns the title text or the alt text if the context menu was invoked on
|
||||||
|
// an image.
|
||||||
|
///
|
||||||
|
// The resulting string must be freed by calling cef_string_userfree_free().
|
||||||
|
cef_string_userfree_t (CEF_CALLBACK *get_title_text)(
|
||||||
|
struct _cef_context_menu_params_t* self);
|
||||||
|
|
||||||
///
|
///
|
||||||
// Returns the URL of the top level page that the context menu was invoked on.
|
// Returns the URL of the top level page that the context menu was invoked on.
|
||||||
///
|
///
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
152
include/capi/cef_crash_util_capi.h
Normal file
152
include/capi/cef_crash_util_capi.h
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions are
|
||||||
|
// met:
|
||||||
|
//
|
||||||
|
// * Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// * Redistributions in binary form must reproduce the above
|
||||||
|
// copyright notice, this list of conditions and the following disclaimer
|
||||||
|
// in the documentation and/or other materials provided with the
|
||||||
|
// distribution.
|
||||||
|
// * Neither the name of Google Inc. nor the name Chromium Embedded
|
||||||
|
// Framework nor the names of its contributors may be used to endorse
|
||||||
|
// or promote products derived from this software without specific prior
|
||||||
|
// written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
//
|
||||||
|
// ---------------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// This file was generated by the CEF translator tool and should not edited
|
||||||
|
// by hand. See the translator.README.txt file in the tools directory for
|
||||||
|
// more information.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef CEF_INCLUDE_CAPI_CEF_CRASH_UTIL_CAPI_H_
|
||||||
|
#define CEF_INCLUDE_CAPI_CEF_CRASH_UTIL_CAPI_H_
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "include/capi/cef_base_capi.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
///
|
||||||
|
// Crash reporting is configured using an INI-style config file named
|
||||||
|
// "crash_reporter.cfg". On Windows and Linux this file must be placed next to
|
||||||
|
// the main application executable. On macOS this file must be placed in the
|
||||||
|
// top-level app bundle Resources directory (e.g.
|
||||||
|
// "<appname>.app/Contents/Resources"). File contents are as follows:
|
||||||
|
//
|
||||||
|
// # Comments start with a hash character and must be on their own line.
|
||||||
|
//
|
||||||
|
// [Config]
|
||||||
|
// ProductName=<Value of the "prod" crash key; defaults to "cef">
|
||||||
|
// ProductVersion=<Value of the "ver" crash key; defaults to the CEF version>
|
||||||
|
// AppName=<Windows only; App-specific folder name component for storing crash
|
||||||
|
// information; default to "CEF">
|
||||||
|
// ExternalHandler=<Windows only; Name of the external handler exe to use
|
||||||
|
// instead of re-launching the main exe; default to empty>
|
||||||
|
// BrowserCrashForwardingEnabled=<macOS only; True if browser process crashes
|
||||||
|
// should be forwarded to the system crash
|
||||||
|
// reporter; default to false>
|
||||||
|
// ServerURL=<crash server URL; default to empty>
|
||||||
|
// RateLimitEnabled=<True if uploads should be rate limited; default to true>
|
||||||
|
// MaxUploadsPerDay=<Max uploads per 24 hours, used if rate limit is enabled;
|
||||||
|
// default to 5>
|
||||||
|
// MaxDatabaseSizeInMb=<Total crash report disk usage greater than this value
|
||||||
|
// will cause older reports to be deleted; default to 20>
|
||||||
|
// MaxDatabaseAgeInDays=<Crash reports older than this value will be deleted;
|
||||||
|
// default to 5>
|
||||||
|
//
|
||||||
|
// [CrashKeys]
|
||||||
|
// my_key1=<small|medium|large>
|
||||||
|
// my_key2=<small|medium|large>
|
||||||
|
//
|
||||||
|
// Config section:
|
||||||
|
//
|
||||||
|
// If "ProductName" and/or "ProductVersion" are set then the specified values
|
||||||
|
// will be included in the crash dump metadata. On macOS if these values are set
|
||||||
|
// to NULL then they will be retrieved from the Info.plist file using the
|
||||||
|
// "CFBundleName" and "CFBundleShortVersionString" keys respectively.
|
||||||
|
//
|
||||||
|
// If "AppName" is set on Windows then crash report information (metrics,
|
||||||
|
// database and dumps) will be stored locally on disk under the
|
||||||
|
// "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other
|
||||||
|
// platforms the CefSettings.user_data_path value will be used.
|
||||||
|
//
|
||||||
|
// If "ExternalHandler" is set on Windows then the specified exe will be
|
||||||
|
// launched as the crashpad-handler instead of re-launching the main process
|
||||||
|
// exe. The value can be an absolute path or a path relative to the main exe
|
||||||
|
// directory. On Linux the CefSettings.browser_subprocess_path value will be
|
||||||
|
// used. On macOS the existing subprocess app bundle will be used.
|
||||||
|
//
|
||||||
|
// If "BrowserCrashForwardingEnabled" is set to true (1) on macOS then browser
|
||||||
|
// process crashes will be forwarded to the system crash reporter. This results
|
||||||
|
// in the crash UI dialog being displayed to the user and crash reports being
|
||||||
|
// logged under "~/Library/Logs/DiagnosticReports". Forwarding of crash reports
|
||||||
|
// from non-browser processes and Debug builds is always disabled.
|
||||||
|
//
|
||||||
|
// If "ServerURL" is set then crashes will be uploaded as a multi-part POST
|
||||||
|
// request to the specified URL. Otherwise, reports will only be stored locally
|
||||||
|
// on disk.
|
||||||
|
//
|
||||||
|
// If "RateLimitEnabled" is set to true (1) then crash report uploads will be
|
||||||
|
// rate limited as follows:
|
||||||
|
// 1. If "MaxUploadsPerDay" is set to a positive value then at most the
|
||||||
|
// specified number of crashes will be uploaded in each 24 hour period.
|
||||||
|
// 2. If crash upload fails due to a network or server error then an
|
||||||
|
// incremental backoff delay up to a maximum of 24 hours will be applied for
|
||||||
|
// retries.
|
||||||
|
// 3. If a backoff delay is applied and "MaxUploadsPerDay" is > 1 then the
|
||||||
|
// "MaxUploadsPerDay" value will be reduced to 1 until the client is
|
||||||
|
// restarted. This helps to avoid an upload flood when the network or
|
||||||
|
// server error is resolved.
|
||||||
|
// Rate limiting is not supported on Linux.
|
||||||
|
//
|
||||||
|
// If "MaxDatabaseSizeInMb" is set to a positive value then crash report storage
|
||||||
|
// on disk will be limited to that size in megabytes. For example, on Windows
|
||||||
|
// each dump is about 600KB so a "MaxDatabaseSizeInMb" value of 20 equates to
|
||||||
|
// about 34 crash reports stored on disk. Not supported on Linux.
|
||||||
|
//
|
||||||
|
// If "MaxDatabaseAgeInDays" is set to a positive value then crash reports older
|
||||||
|
// than the specified age in days will be deleted. Not supported on Linux.
|
||||||
|
//
|
||||||
|
// CrashKeys section:
|
||||||
|
//
|
||||||
|
// Any number of crash keys can be specified for use by the application. Crash
|
||||||
|
// key values will be truncated based on the specified size (small = 63 bytes,
|
||||||
|
// medium = 252 bytes, large = 1008 bytes). The value of crash keys can be set
|
||||||
|
// from any thread or process using the CefSetCrashKeyValue function. These
|
||||||
|
// key/value pairs will be sent to the crash server along with the crash dump
|
||||||
|
// file. Medium and large values will be chunked for submission. For example, if
|
||||||
|
// your key is named "mykey" then the value will be broken into ordered chunks
|
||||||
|
// and submitted using keys named "mykey-1", "mykey-2", etc.
|
||||||
|
///
|
||||||
|
CEF_EXPORT int cef_crash_reporting_enabled();
|
||||||
|
|
||||||
|
///
|
||||||
|
// Sets or clears a specific key-value pair from the crash metadata.
|
||||||
|
///
|
||||||
|
CEF_EXPORT void cef_set_crash_key_value(const cef_string_t* key,
|
||||||
|
const cef_string_t* value);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // CEF_INCLUDE_CAPI_CEF_CRASH_UTIL_CAPI_H_
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
@@ -70,23 +70,25 @@ typedef struct _cef_request_context_handler_t {
|
|||||||
// Called on multiple browser process threads before a plugin instance is
|
// Called on multiple browser process threads before a plugin instance is
|
||||||
// loaded. |mime_type| is the mime type of the plugin that will be loaded.
|
// loaded. |mime_type| is the mime type of the plugin that will be loaded.
|
||||||
// |plugin_url| is the content URL that the plugin will load and may be NULL.
|
// |plugin_url| is the content URL that the plugin will load and may be NULL.
|
||||||
// |top_origin_url| is the URL for the top-level frame that contains the
|
// |is_main_frame| will be true (1) if the plugin is being loaded in the main
|
||||||
// plugin when loading a specific plugin instance or NULL when building the
|
// (top-level) frame, |top_origin_url| is the URL for the top-level frame that
|
||||||
// initial list of enabled plugins for 'navigator.plugins' JavaScript state.
|
// contains the plugin when loading a specific plugin instance or NULL when
|
||||||
// |plugin_info| includes additional information about the plugin that will be
|
// building the initial list of enabled plugins for 'navigator.plugins'
|
||||||
// loaded. |plugin_policy| is the recommended policy. Modify |plugin_policy|
|
// JavaScript state. |plugin_info| includes additional information about the
|
||||||
// and return true (1) to change the policy. Return false (0) to use the
|
// plugin that will be loaded. |plugin_policy| is the recommended policy.
|
||||||
// recommended policy. The default plugin policy can be set at runtime using
|
// Modify |plugin_policy| and return true (1) to change the policy. Return
|
||||||
// the `--plugin-policy=[allow|detect|block]` command-line flag. Decisions to
|
// false (0) to use the recommended policy. The default plugin policy can be
|
||||||
// mark a plugin as disabled by setting |plugin_policy| to
|
// set at runtime using the `--plugin-policy=[allow|detect|block]` command-
|
||||||
// PLUGIN_POLICY_DISABLED may be cached when |top_origin_url| is NULL. To
|
// line flag. Decisions to mark a plugin as disabled by setting
|
||||||
// purge the plugin list cache and potentially trigger new calls to this
|
// |plugin_policy| to PLUGIN_POLICY_DISABLED may be cached when
|
||||||
// function call cef_request_tContext::PurgePluginListCache.
|
// |top_origin_url| is NULL. To purge the plugin list cache and potentially
|
||||||
|
// trigger new calls to this function call
|
||||||
|
// cef_request_tContext::PurgePluginListCache.
|
||||||
///
|
///
|
||||||
int (CEF_CALLBACK *on_before_plugin_load)(
|
int (CEF_CALLBACK *on_before_plugin_load)(
|
||||||
struct _cef_request_context_handler_t* self,
|
struct _cef_request_context_handler_t* self,
|
||||||
const cef_string_t* mime_type, const cef_string_t* plugin_url,
|
const cef_string_t* mime_type, const cef_string_t* plugin_url,
|
||||||
const cef_string_t* top_origin_url,
|
int is_main_frame, const cef_string_t* top_origin_url,
|
||||||
struct _cef_web_plugin_info_t* plugin_info,
|
struct _cef_web_plugin_info_t* plugin_info,
|
||||||
cef_plugin_policy_t* plugin_policy);
|
cef_plugin_policy_t* plugin_policy);
|
||||||
} cef_request_context_handler_t;
|
} cef_request_context_handler_t;
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
// Copyright (c) 2017 Marshall A. Greenblatt. All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
// modification, are permitted provided that the following conditions are
|
// modification, are permitted provided that the following conditions are
|
||||||
|
@@ -195,6 +195,13 @@ class CefContextMenuParams : public virtual CefBase {
|
|||||||
/*--cef()--*/
|
/*--cef()--*/
|
||||||
virtual bool HasImageContents() =0;
|
virtual bool HasImageContents() =0;
|
||||||
|
|
||||||
|
///
|
||||||
|
// Returns the title text or the alt text if the context menu was invoked on
|
||||||
|
// an image.
|
||||||
|
///
|
||||||
|
/*--cef()--*/
|
||||||
|
virtual CefString GetTitleText() = 0;
|
||||||
|
|
||||||
///
|
///
|
||||||
// Returns the URL of the top level page that the context menu was invoked on.
|
// Returns the URL of the top level page that the context menu was invoked on.
|
||||||
///
|
///
|
||||||
|
144
include/cef_crash_util.h
Normal file
144
include/cef_crash_util.h
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
// Copyright (c) 2016 Marshall A. Greenblatt. All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions are
|
||||||
|
// met:
|
||||||
|
//
|
||||||
|
// * Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions and the following disclaimer.
|
||||||
|
// * Redistributions in binary form must reproduce the above
|
||||||
|
// copyright notice, this list of conditions and the following disclaimer
|
||||||
|
// in the documentation and/or other materials provided with the
|
||||||
|
// distribution.
|
||||||
|
// * Neither the name of Google Inc. nor the name Chromium Embedded
|
||||||
|
// Framework nor the names of its contributors may be used to endorse
|
||||||
|
// or promote products derived from this software without specific prior
|
||||||
|
// written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
//
|
||||||
|
// ---------------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// The contents of this file must follow a specific format in order to
|
||||||
|
// support the CEF translator tool. See the translator.README.txt file in the
|
||||||
|
// tools directory for more information.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef CEF_INCLUDE_CEF_CRASH_UTIL_H_
|
||||||
|
#define CEF_INCLUDE_CEF_CRASH_UTIL_H_
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
///
|
||||||
|
// Crash reporting is configured using an INI-style config file named
|
||||||
|
// "crash_reporter.cfg". On Windows and Linux this file must be placed next to
|
||||||
|
// the main application executable. On macOS this file must be placed in the
|
||||||
|
// top-level app bundle Resources directory (e.g.
|
||||||
|
// "<appname>.app/Contents/Resources"). File contents are as follows:
|
||||||
|
//
|
||||||
|
// # Comments start with a hash character and must be on their own line.
|
||||||
|
//
|
||||||
|
// [Config]
|
||||||
|
// ProductName=<Value of the "prod" crash key; defaults to "cef">
|
||||||
|
// ProductVersion=<Value of the "ver" crash key; defaults to the CEF version>
|
||||||
|
// AppName=<Windows only; App-specific folder name component for storing crash
|
||||||
|
// information; default to "CEF">
|
||||||
|
// ExternalHandler=<Windows only; Name of the external handler exe to use
|
||||||
|
// instead of re-launching the main exe; default to empty>
|
||||||
|
// BrowserCrashForwardingEnabled=<macOS only; True if browser process crashes
|
||||||
|
// should be forwarded to the system crash
|
||||||
|
// reporter; default to false>
|
||||||
|
// ServerURL=<crash server URL; default to empty>
|
||||||
|
// RateLimitEnabled=<True if uploads should be rate limited; default to true>
|
||||||
|
// MaxUploadsPerDay=<Max uploads per 24 hours, used if rate limit is enabled;
|
||||||
|
// default to 5>
|
||||||
|
// MaxDatabaseSizeInMb=<Total crash report disk usage greater than this value
|
||||||
|
// will cause older reports to be deleted; default to 20>
|
||||||
|
// MaxDatabaseAgeInDays=<Crash reports older than this value will be deleted;
|
||||||
|
// default to 5>
|
||||||
|
//
|
||||||
|
// [CrashKeys]
|
||||||
|
// my_key1=<small|medium|large>
|
||||||
|
// my_key2=<small|medium|large>
|
||||||
|
//
|
||||||
|
// Config section:
|
||||||
|
//
|
||||||
|
// If "ProductName" and/or "ProductVersion" are set then the specified values
|
||||||
|
// will be included in the crash dump metadata. On macOS if these values are set
|
||||||
|
// to empty then they will be retrieved from the Info.plist file using the
|
||||||
|
// "CFBundleName" and "CFBundleShortVersionString" keys respectively.
|
||||||
|
//
|
||||||
|
// If "AppName" is set on Windows then crash report information (metrics,
|
||||||
|
// database and dumps) will be stored locally on disk under the
|
||||||
|
// "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other
|
||||||
|
// platforms the CefSettings.user_data_path value will be used.
|
||||||
|
//
|
||||||
|
// If "ExternalHandler" is set on Windows then the specified exe will be
|
||||||
|
// launched as the crashpad-handler instead of re-launching the main process
|
||||||
|
// exe. The value can be an absolute path or a path relative to the main exe
|
||||||
|
// directory. On Linux the CefSettings.browser_subprocess_path value will be
|
||||||
|
// used. On macOS the existing subprocess app bundle will be used.
|
||||||
|
//
|
||||||
|
// If "BrowserCrashForwardingEnabled" is set to true on macOS then browser
|
||||||
|
// process crashes will be forwarded to the system crash reporter. This results
|
||||||
|
// in the crash UI dialog being displayed to the user and crash reports being
|
||||||
|
// logged under "~/Library/Logs/DiagnosticReports". Forwarding of crash reports
|
||||||
|
// from non-browser processes and Debug builds is always disabled.
|
||||||
|
//
|
||||||
|
// If "ServerURL" is set then crashes will be uploaded as a multi-part POST
|
||||||
|
// request to the specified URL. Otherwise, reports will only be stored locally
|
||||||
|
// on disk.
|
||||||
|
//
|
||||||
|
// If "RateLimitEnabled" is set to true then crash report uploads will be rate
|
||||||
|
// limited as follows:
|
||||||
|
// 1. If "MaxUploadsPerDay" is set to a positive value then at most the
|
||||||
|
// specified number of crashes will be uploaded in each 24 hour period.
|
||||||
|
// 2. If crash upload fails due to a network or server error then an
|
||||||
|
// incremental backoff delay up to a maximum of 24 hours will be applied for
|
||||||
|
// retries.
|
||||||
|
// 3. If a backoff delay is applied and "MaxUploadsPerDay" is > 1 then the
|
||||||
|
// "MaxUploadsPerDay" value will be reduced to 1 until the client is
|
||||||
|
// restarted. This helps to avoid an upload flood when the network or
|
||||||
|
// server error is resolved.
|
||||||
|
// Rate limiting is not supported on Linux.
|
||||||
|
//
|
||||||
|
// If "MaxDatabaseSizeInMb" is set to a positive value then crash report storage
|
||||||
|
// on disk will be limited to that size in megabytes. For example, on Windows
|
||||||
|
// each dump is about 600KB so a "MaxDatabaseSizeInMb" value of 20 equates to
|
||||||
|
// about 34 crash reports stored on disk. Not supported on Linux.
|
||||||
|
//
|
||||||
|
// If "MaxDatabaseAgeInDays" is set to a positive value then crash reports older
|
||||||
|
// than the specified age in days will be deleted. Not supported on Linux.
|
||||||
|
//
|
||||||
|
// CrashKeys section:
|
||||||
|
//
|
||||||
|
// Any number of crash keys can be specified for use by the application. Crash
|
||||||
|
// key values will be truncated based on the specified size (small = 63 bytes,
|
||||||
|
// medium = 252 bytes, large = 1008 bytes). The value of crash keys can be set
|
||||||
|
// from any thread or process using the CefSetCrashKeyValue function. These
|
||||||
|
// key/value pairs will be sent to the crash server along with the crash dump
|
||||||
|
// file. Medium and large values will be chunked for submission. For example,
|
||||||
|
// if your key is named "mykey" then the value will be broken into ordered
|
||||||
|
// chunks and submitted using keys named "mykey-1", "mykey-2", etc.
|
||||||
|
///
|
||||||
|
/*--cef()--*/
|
||||||
|
bool CefCrashReportingEnabled();
|
||||||
|
|
||||||
|
#include "include/cef_base.h"
|
||||||
|
|
||||||
|
///
|
||||||
|
// Sets or clears a specific key-value pair from the crash metadata.
|
||||||
|
///
|
||||||
|
/*--cef(optional_param=value)--*/
|
||||||
|
void CefSetCrashKeyValue(const CefString& key, const CefString& value);
|
||||||
|
|
||||||
|
#endif // CEF_INCLUDE_CEF_CRASH_UTIL_H_
|
@@ -64,22 +64,24 @@ class CefRequestContextHandler : public virtual CefBase {
|
|||||||
// Called on multiple browser process threads before a plugin instance is
|
// Called on multiple browser process threads before a plugin instance is
|
||||||
// loaded. |mime_type| is the mime type of the plugin that will be loaded.
|
// loaded. |mime_type| is the mime type of the plugin that will be loaded.
|
||||||
// |plugin_url| is the content URL that the plugin will load and may be empty.
|
// |plugin_url| is the content URL that the plugin will load and may be empty.
|
||||||
// |top_origin_url| is the URL for the top-level frame that contains the
|
// |is_main_frame| will be true if the plugin is being loaded in the main
|
||||||
// plugin when loading a specific plugin instance or empty when building the
|
// (top-level) frame, |top_origin_url| is the URL for the top-level frame that
|
||||||
// initial list of enabled plugins for 'navigator.plugins' JavaScript state.
|
// contains the plugin when loading a specific plugin instance or empty when
|
||||||
// |plugin_info| includes additional information about the plugin that will be
|
// building the initial list of enabled plugins for 'navigator.plugins'
|
||||||
// loaded. |plugin_policy| is the recommended policy. Modify |plugin_policy|
|
// JavaScript state. |plugin_info| includes additional information about the
|
||||||
// and return true to change the policy. Return false to use the recommended
|
// plugin that will be loaded. |plugin_policy| is the recommended policy.
|
||||||
// policy. The default plugin policy can be set at runtime using the
|
// Modify |plugin_policy| and return true to change the policy. Return false
|
||||||
// `--plugin-policy=[allow|detect|block]` command-line flag. Decisions to mark
|
// to use the recommended policy. The default plugin policy can be set at
|
||||||
// a plugin as disabled by setting |plugin_policy| to PLUGIN_POLICY_DISABLED
|
// runtime using the `--plugin-policy=[allow|detect|block]` command-line flag.
|
||||||
// may be cached when |top_origin_url| is empty. To purge the plugin list
|
// Decisions to mark a plugin as disabled by setting |plugin_policy| to
|
||||||
// cache and potentially trigger new calls to this method call
|
// PLUGIN_POLICY_DISABLED may be cached when |top_origin_url| is empty. To
|
||||||
// CefRequestContext::PurgePluginListCache.
|
// purge the plugin list cache and potentially trigger new calls to this
|
||||||
|
// method call CefRequestContext::PurgePluginListCache.
|
||||||
///
|
///
|
||||||
/*--cef(optional_param=plugin_url,optional_param=top_origin_url)--*/
|
/*--cef(optional_param=plugin_url,optional_param=top_origin_url)--*/
|
||||||
virtual bool OnBeforePluginLoad(const CefString& mime_type,
|
virtual bool OnBeforePluginLoad(const CefString& mime_type,
|
||||||
const CefString& plugin_url,
|
const CefString& plugin_url,
|
||||||
|
bool is_main_frame,
|
||||||
const CefString& top_origin_url,
|
const CefString& top_origin_url,
|
||||||
CefRefPtr<CefWebPluginInfo> plugin_info,
|
CefRefPtr<CefWebPluginInfo> plugin_info,
|
||||||
PluginPolicy* plugin_policy) {
|
PluginPolicy* plugin_policy) {
|
||||||
|
@@ -166,12 +166,23 @@ typedef struct _cef_settings_t {
|
|||||||
|
|
||||||
///
|
///
|
||||||
// The path to a separate executable that will be launched for sub-processes.
|
// The path to a separate executable that will be launched for sub-processes.
|
||||||
// By default the browser process executable is used. See the comments on
|
// If this value is empty on Windows or Linux then the main process executable
|
||||||
// CefExecuteProcess() for details. Also configurable using the
|
// will be used. If this value is empty on macOS then a helper executable must
|
||||||
// "browser-subprocess-path" command-line switch.
|
// exist at "Contents/Frameworks/<app> Helper.app/Contents/MacOS/<app> Helper"
|
||||||
|
// in the top-level app bundle. See the comments on CefExecuteProcess() for
|
||||||
|
// details. Also configurable using the "browser-subprocess-path" command-line
|
||||||
|
// switch.
|
||||||
///
|
///
|
||||||
cef_string_t browser_subprocess_path;
|
cef_string_t browser_subprocess_path;
|
||||||
|
|
||||||
|
///
|
||||||
|
// The path to the CEF framework directory on macOS. If this value is empty
|
||||||
|
// then the framework must exist at "Contents/Frameworks/Chromium Embedded
|
||||||
|
// Framework.framework" in the top-level app bundle. Also configurable using
|
||||||
|
// the "framework-dir-path" command-line switch.
|
||||||
|
///
|
||||||
|
cef_string_t framework_dir_path;
|
||||||
|
|
||||||
///
|
///
|
||||||
// Set to true (1) to have the browser process message loop run in a separate
|
// Set to true (1) to have the browser process message loop run in a separate
|
||||||
// thread. If false (0) than the CefDoMessageLoopWork() function must be
|
// thread. If false (0) than the CefDoMessageLoopWork() function must be
|
||||||
|
@@ -555,6 +555,7 @@ struct CefSettingsTraits {
|
|||||||
|
|
||||||
static inline void clear(struct_type* s) {
|
static inline void clear(struct_type* s) {
|
||||||
cef_string_clear(&s->browser_subprocess_path);
|
cef_string_clear(&s->browser_subprocess_path);
|
||||||
|
cef_string_clear(&s->framework_dir_path);
|
||||||
cef_string_clear(&s->cache_path);
|
cef_string_clear(&s->cache_path);
|
||||||
cef_string_clear(&s->user_data_path);
|
cef_string_clear(&s->user_data_path);
|
||||||
cef_string_clear(&s->user_agent);
|
cef_string_clear(&s->user_agent);
|
||||||
@@ -574,6 +575,9 @@ struct CefSettingsTraits {
|
|||||||
cef_string_set(src->browser_subprocess_path.str,
|
cef_string_set(src->browser_subprocess_path.str,
|
||||||
src->browser_subprocess_path.length,
|
src->browser_subprocess_path.length,
|
||||||
&target->browser_subprocess_path, copy);
|
&target->browser_subprocess_path, copy);
|
||||||
|
cef_string_set(src->framework_dir_path.str,
|
||||||
|
src->framework_dir_path.length,
|
||||||
|
&target->framework_dir_path, copy);
|
||||||
target->multi_threaded_message_loop = src->multi_threaded_message_loop;
|
target->multi_threaded_message_loop = src->multi_threaded_message_loop;
|
||||||
target->external_message_pump = src->external_message_pump;
|
target->external_message_pump = src->external_message_pump;
|
||||||
target->windowless_rendering_enabled = src->windowless_rendering_enabled;
|
target->windowless_rendering_enabled = src->windowless_rendering_enabled;
|
||||||
@@ -982,7 +986,8 @@ struct CefCompositionUnderlineTraits {
|
|||||||
typedef cef_composition_underline_t struct_type;
|
typedef cef_composition_underline_t struct_type;
|
||||||
|
|
||||||
static inline void init(struct_type* s) {
|
static inline void init(struct_type* s) {
|
||||||
s->range = {0, 0};
|
s->range.from = 0;
|
||||||
|
s->range.to = 0;
|
||||||
s->color = 0;
|
s->color = 0;
|
||||||
s->background_color = 0;
|
s->background_color = 0;
|
||||||
s->thick = 0;
|
s->thick = 0;
|
||||||
|
@@ -2233,26 +2233,13 @@ bool CefBrowserHostImpl::CanDragEnter(
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CefBrowserHostImpl::ShouldCreateWebContents(
|
void CefBrowserHostImpl::GetCustomWebContentsView(
|
||||||
content::WebContents* web_contents,
|
content::WebContents* web_contents,
|
||||||
int route_id,
|
|
||||||
int main_frame_route_id,
|
|
||||||
int32_t main_frame_widget_route_id,
|
|
||||||
WindowContainerType window_container_type,
|
|
||||||
const std::string& frame_name,
|
|
||||||
const GURL& target_url,
|
const GURL& target_url,
|
||||||
const std::string& partition_id,
|
|
||||||
content::SessionStorageNamespace* session_storage_namespace,
|
|
||||||
content::WebContentsView** view,
|
content::WebContentsView** view,
|
||||||
content::RenderViewHostDelegateView** delegate_view) {
|
content::RenderViewHostDelegateView** delegate_view) {
|
||||||
// In cases where the navigation will occur in a new render process the
|
CefBrowserInfoManager::GetInstance()->GetCustomWebContentsView(
|
||||||
// |route_id| value will be MSG_ROUTING_NONE here (because the existing
|
|
||||||
// renderer will not be able to communicate with the new renderer) and
|
|
||||||
// OpenURLFromTab will be called after WebContentsCreated.
|
|
||||||
CefBrowserInfoManager::GetInstance()->ShouldCreateWebContents(
|
|
||||||
web_contents, target_url, view, delegate_view);
|
web_contents, target_url, view, delegate_view);
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CefBrowserHostImpl::WebContentsCreated(
|
void CefBrowserHostImpl::WebContentsCreated(
|
||||||
|
@@ -402,16 +402,9 @@ class CefBrowserHostImpl : public CefBrowserHost,
|
|||||||
content::WebContents* source,
|
content::WebContents* source,
|
||||||
const content::DropData& data,
|
const content::DropData& data,
|
||||||
blink::WebDragOperationsMask operations_allowed) override;
|
blink::WebDragOperationsMask operations_allowed) override;
|
||||||
bool ShouldCreateWebContents(
|
void GetCustomWebContentsView(
|
||||||
content::WebContents* web_contents,
|
content::WebContents* web_contents,
|
||||||
int route_id,
|
|
||||||
int main_frame_route_id,
|
|
||||||
int32_t main_frame_widget_route_id,
|
|
||||||
WindowContainerType window_container_type,
|
|
||||||
const std::string& frame_name,
|
|
||||||
const GURL& target_url,
|
const GURL& target_url,
|
||||||
const std::string& partition_id,
|
|
||||||
content::SessionStorageNamespace* session_storage_namespace,
|
|
||||||
content::WebContentsView** view,
|
content::WebContentsView** view,
|
||||||
content::RenderViewHostDelegateView** delegate_view) override;
|
content::RenderViewHostDelegateView** delegate_view) override;
|
||||||
void WebContentsCreated(content::WebContents* source_contents,
|
void WebContentsCreated(content::WebContents* source_contents,
|
||||||
|
@@ -257,7 +257,7 @@ bool CefBrowserInfoManager::CanCreateWindow(
|
|||||||
return allow;
|
return allow;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CefBrowserInfoManager::ShouldCreateWebContents(
|
void CefBrowserInfoManager::GetCustomWebContentsView(
|
||||||
content::WebContents* web_contents,
|
content::WebContents* web_contents,
|
||||||
const GURL& target_url,
|
const GURL& target_url,
|
||||||
content::WebContentsView** view,
|
content::WebContentsView** view,
|
||||||
@@ -276,7 +276,7 @@ void CefBrowserInfoManager::ShouldCreateWebContents(
|
|||||||
}
|
}
|
||||||
|
|
||||||
pending_popup->step =
|
pending_popup->step =
|
||||||
CefBrowserInfoManager::PendingPopup::SHOULD_CREATE_WEB_CONTENTS;
|
CefBrowserInfoManager::PendingPopup::GET_CUSTOM_WEB_CONTENTS_VIEW;
|
||||||
PushPendingPopup(std::move(pending_popup));
|
PushPendingPopup(std::move(pending_popup));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ void CefBrowserInfoManager::WebContentsCreated(
|
|||||||
|
|
||||||
std::unique_ptr<CefBrowserInfoManager::PendingPopup> pending_popup =
|
std::unique_ptr<CefBrowserInfoManager::PendingPopup> pending_popup =
|
||||||
PopPendingPopup(
|
PopPendingPopup(
|
||||||
CefBrowserInfoManager::PendingPopup::SHOULD_CREATE_WEB_CONTENTS,
|
CefBrowserInfoManager::PendingPopup::GET_CUSTOM_WEB_CONTENTS_VIEW,
|
||||||
source_contents->GetRenderViewHost()->GetProcess()->GetID(),
|
source_contents->GetRenderViewHost()->GetProcess()->GetID(),
|
||||||
source_contents->GetRenderViewHost()->GetRoutingID(),
|
source_contents->GetRenderViewHost()->GetRoutingID(),
|
||||||
target_url);
|
target_url);
|
||||||
|
@@ -72,9 +72,9 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver {
|
|||||||
int opener_render_frame_id,
|
int opener_render_frame_id,
|
||||||
bool* no_javascript_access);
|
bool* no_javascript_access);
|
||||||
|
|
||||||
// Called from CefBrowserHostImpl::ShouldCreateWebContents. See comments on
|
// Called from CefBrowserHostImpl::GetCustomWebContentsView. See comments on
|
||||||
// PendingPopup for more information.
|
// PendingPopup for more information.
|
||||||
void ShouldCreateWebContents(
|
void GetCustomWebContentsView(
|
||||||
content::WebContents* web_contents,
|
content::WebContents* web_contents,
|
||||||
const GURL& target_url,
|
const GURL& target_url,
|
||||||
content::WebContentsView** view,
|
content::WebContentsView** view,
|
||||||
@@ -138,7 +138,7 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver {
|
|||||||
// an extension guest view then the popup is canceled and
|
// an extension guest view then the popup is canceled and
|
||||||
// CefBrowserHostImpl::OpenURLFromTab is called.
|
// CefBrowserHostImpl::OpenURLFromTab is called.
|
||||||
// And then the following calls may occur at the same time:
|
// And then the following calls may occur at the same time:
|
||||||
// - CefBrowserHostImpl::ShouldCreateWebContents (UIT)
|
// - CefBrowserHostImpl::GetCustomWebContentsView (UIT)
|
||||||
// Creates the OSR views for windowless popups.
|
// Creates the OSR views for windowless popups.
|
||||||
// - CefBrowserHostImpl::WebContentsCreated (UIT)
|
// - CefBrowserHostImpl::WebContentsCreated (UIT)
|
||||||
// Creates the CefBrowserHostImpl representation for the popup.
|
// Creates the CefBrowserHostImpl representation for the popup.
|
||||||
@@ -150,7 +150,7 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver {
|
|||||||
// to differentiate between them at different processing steps.
|
// to differentiate between them at different processing steps.
|
||||||
enum Step {
|
enum Step {
|
||||||
CAN_CREATE_WINDOW,
|
CAN_CREATE_WINDOW,
|
||||||
SHOULD_CREATE_WEB_CONTENTS
|
GET_CUSTOM_WEB_CONTENTS_VIEW,
|
||||||
} step;
|
} step;
|
||||||
|
|
||||||
// Initial state from ViewHostMsg_CreateWindow.
|
// Initial state from ViewHostMsg_CreateWindow.
|
||||||
@@ -170,11 +170,11 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver {
|
|||||||
std::unique_ptr<CefBrowserPlatformDelegate> platform_delegate;
|
std::unique_ptr<CefBrowserPlatformDelegate> platform_delegate;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Between the calls to CanCreateWindow and ShouldCreateWebContents
|
// Between the calls to CanCreateWindow and GetCustomWebContentsView
|
||||||
// RenderViewHostImpl::CreateNewWindow() will call
|
// RenderViewHostImpl::CreateNewWindow() will call
|
||||||
// RenderProcessHostImpl::FilterURL() which, in the case of "javascript:"
|
// RenderProcessHostImpl::FilterURL() which, in the case of "javascript:"
|
||||||
// URIs, rewrites the URL to "about:blank". We need to apply the same filter
|
// URIs, rewrites the URL to "about:blank". We need to apply the same filter
|
||||||
// otherwise ShouldCreateWebContents will fail to retrieve the PopupInfo.
|
// otherwise GetCustomWebContentsView will fail to retrieve the PopupInfo.
|
||||||
static void FilterPendingPopupURL(
|
static void FilterPendingPopupURL(
|
||||||
int render_process_id,
|
int render_process_id,
|
||||||
std::unique_ptr<PendingPopup> pending_popup);
|
std::unique_ptr<PendingPopup> pending_popup);
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user